如何在 Linux 安装 MySQL 数据库

本教程手把手教你如何在 Linux 安装 MySQL 数据库,以 CentOS 8为例。

之前,我买了阿里云的服务器centos7,安装mysql,特此记录一下,方便自己以后查找使用

1. 下载并安装 MySQL 官方的 Yum Repository

wget https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm
复制代码

使用上面的命令就直接下载了安装用的Yum Repository,大概25KB的样子,然后就可以直接yum安装了。

2、然后进行repo的安装:

rpm -ivh mysql80-community-release-el7-1.noarch.rpm
复制代码

执行完成后会在/etc/yum.repos.d/目录下生成两个repo文件mysql-community.repo mysql-community-source.repo

之后就开始安装MySQL服务器。

yum install mysql-server
复制代码

这步可能会花些时间,安装完成后就会覆盖掉之前的mariadb。

如何在 Linux 安装 MySQL 数据库

然而,好像这些信息对我们来说并没有什么用处,什么守护进程没启动,我们也不能知如何去启动这些,这个时候我们查看一下mysql自带的告警日志,路径一般在/var/log/mysqld.log下面

tail -200f  /var/log/mysqld.log
复制代码

blog.csdn.net/liurui50/ar…

2. MySQL数据库设置

2.1. 设置不区分大小写

vim /etc/my.cnf
复制代码

在[mysqld]下,添加以下内容

#让MYSQL大小写敏感(1-不敏感,0-敏感)
lower_case_table_names=1
复制代码

2.2. 启动MySQL

systemctl start mysqld.service 
复制代码

2.3. 查看MySQL运行状态

systemctl status mysqld.service
复制代码

如何在 Linux 安装 MySQL 数据库

2.4. 设置密码

此时MySQL已经开始正常运行,不过要想进入MySQL还得先找出此时root用户的密码,通过如下命令可以在日志文件中找出密码:

grep "password" /var/log/mysqld.log
复制代码

如何在 Linux 安装 MySQL 数据库

进入数据库:

mysql -uroot -p
复制代码

输入刚刚上面的初始密码

如何在 Linux 安装 MySQL 数据库

此时不能做任何事情,因为MySQL默认必须修改密码之后才能操作数据库:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
复制代码

new password为你设置的root密码 这里有个问题,新密码设置的时候如果设置的过于简单会报错:

如何在 Linux 安装 MySQL 数据库如何在 Linux 安装 MySQL 数据库

尽量把密码设置复杂一些

如何在 Linux 安装 MySQL 数据库

2.5. 设置远程访问

此时不能远程访问,如Navicat访问不了

如何在 Linux 安装 MySQL 数据库居中

2.5.1 开放端口

(1)开放3306端口

firewall-cmd --permanent --zone=public --add-port=3306/tcp
复制代码

(2)如果提示FirewallD is not running,如下图所示

如何在 Linux 安装 MySQL 数据库

(3)通过systemctl status firewalld查看firewalld状态,发现当前是dead状态,即防火墙未开启。

如何在 Linux 安装 MySQL 数据库

(4)通过systemctl start firewalld开启防火墙,没有任何提示即开启成功。

如何在 Linux 安装 MySQL 数据库

(5)再次通过systemctl status firewalld查看firewalld状态,显示running即已开启了。

如何在 Linux 安装 MySQL 数据库

(6)如果要关闭防火墙设置,可能通过systemctl stop firewalld这条指令来关闭该功能。

如何在 Linux 安装 MySQL 数据库

(7)再次执行firewall-cmd --permanent --zone=public --add-port=3306/tcp ,提示success,表示设置成功,这样就可以继续后面的设置了。

如何在 Linux 安装 MySQL 数据库

(8)刷新

firewall-cmd --reload
复制代码

如何在 Linux 安装 MySQL 数据库

2.5.2. root远程访问

当防火墙开启后,Navicat访问出现如下图:

如何在 Linux 安装 MySQL 数据库

(1)设置认证方式。 如果你没有设置认证方式,默认的密码加密方式是:caching_sha2_password,而现在很多客户端工具还不支持这种加密认证方式,连接测试的时候就会报错:

client does not support  authentication protocol requested by server; consider upgrading MySQL client
复制代码

这里的错误信息就是不支持身份认证方式,没关系,编辑/etc/my.cnf(编辑命令:vim /etc/my.cnf)文件里面在[mysqld]下面加上这句话即可:

default_authentication_plugin=mysql_native_password
复制代码

如何在 Linux 安装 MySQL 数据库

(2)登陆到mysql命令行:然后输入密码

mysql -u root -p
复制代码

如何在 Linux 安装 MySQL 数据库

(3)进入之后选择mysql库,用户信息都存在这个库的user表中

use mysql;
select host, user, authentication_string, plugin from user;
复制代码

如何在 Linux 安装 MySQL 数据库居中

可以看到,用户对应的主机是localhost,而不是%,所以不能连接。 (4)授权root用户可以远程登陆

update user set host='%' where user = 'root';
flush privileges;
复制代码

如何在 Linux 安装 MySQL 数据库

(5)刷新权限

flush privileges;
复制代码

如何在 Linux 安装 MySQL 数据库

2.6阿里云设置安全组需要开放3306端口

安全组---配置规则---快速添加即可

如何在 Linux 安装 MySQL 数据库

此时,数据库就已经安装配置好了。 如此详细的图文教程,你学会了吗?赶紧收藏并试试吧!

2.7 2059错误的解决方案

MySQL新版本(8以上版本)的用户登录账户加密方式是【caching_sha2_password】,Navicat不支持这种用户登录账户加密方式。

执行

show variables like 'default_authentication_plugin';
select host,user,plugin from mysql.user;
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'mima';
flush privileges;
复制代码

如何在 Linux 安装 MySQL 数据库

如何在 Linux 安装 MySQL 数据库



上一篇:悬赏:Kerberos认证Service_key及Ticket获取相关问题思路求教


下一篇:Qt实现环形拖动旋转框