第一次在Linux 上安装数据库也是第一次使用linux 踩了不少坑,为了防止再次忘记,做个记录也顺便分享一下
我用的是腾讯云,linux 系统选择的CentOS Stream 9 64位,数据库可视化软件是HeidlSQL,具体如何安装linux 系统,以及安装HeidlSQL这里不做赘述
登录到linux 系统
第一步:
安装mariadb数据库
yum install mariadb-server;
Is this ok [y/N]:y
表示安装完成
第二步:
设置相关数据库
1、启动数据库
systemctl start mariadb;
2、设置数据库自启动
systemctl enable mariadb;
表示设置成功
第三步:对数据库进行一些设置
mysql_secure_installation
mysql_secure_installation
大概有以下的命令
1、输入当前密码(因为是第一次安装,没有密码,所以可以直接enter 跳过)
2、切换到unix_socket身份验证 是否切换到unix验证方式,字面意思,不修改就行,选n就可以
3、修改当前密码,初次设置即为设置密码,选Y
4、设置密码,两次,linux 和window 不太一样的是这个地方就算是输入了也不会在终端行显示出来,第一次使用linux 可能会以为没输入,但是其实是已经读取了,这个地方是个小坑,因为我是第一次用linux ,所以查了一会才找到原因,正常设置密码就好,这个密码要记住,不然后面就很麻烦
5、是否移除匿名用户,看个人选择,我这边选择了移除Y
6、是否禁止远程链接(因为后面也要设置远程登录,所以怎么设置也无所谓,所以我选择了N,因为我后面还要远程链接)
7、是否删除test数据库,个人需求
8、是否重载权限表,个人需求
至此,设置数据库的基础信息就已经设置完成了,我们可以测试一下
mysql -u root -p
root 是默认用户,一般不建议修改
mysql -u root -p
输入刚才设置的密码即可
显示以下界面则表明设置登录成功
第五步:用HeidISQL 来显示数据库
新建一个会话
输入相关信息:
主机名\ip 输入腾讯云的的外部IP 地址
用户:root
网络类型:Mariadb or MySQL(TCP/IP)
密码:我们设置的数据库的密码
端口:默认3306
然后选择打开,但是这个时候会表示数据库拒绝我们访问,是因为我们没有在数据库上设置
Host ***.***.***.*** is not allowed to connect to this Mariadb server
接下来就是最后一步,设置数据库的外部访问
选择 使用mysql
use mysql
use mysql;
选择查看user 种的host 和user
select user,host from user;
select user,host from user;
表明所有用户都是本地服务,我们的目的是让root 可以远程链接,所以我们要将root 用户的Host 改为通用,%,
这个时候分为Mariadb 的版本了,其中MariaDB从10.4开始
在MariaDB 10.4及更高版本中,mysql.global_priv 表已经取代了 mysql.user
表,所以分版本设置
10.4- 的命令是
update user set host = '%' where user = 'root';
update user set host = '%' where user = 'root';
10.4+ 的命令是
update global_priv set host ='%' where user ='root';
update global_priv set host ='%' where user ='root';
我的版本是10.4+,所以使用global_priv
接下来是要刷新权限表,否则不会生效
flush privileges;
flush privileges;
表示设置成功,现在网络链接就设置完成了
后面返回HeidlSQL,打开数据表即可正常使用了
以上就是我在linux 上安装Mariadb 的过程,总结一下遇到了一下坑
1、linux的操作和window完全不同,还是需要习惯
2、数据库的版本,操作的方法虽然相似,但是还是有区别,光看网上的讲解是完全不够的,最好还是去官网看一下方法