简介
MySQL
数据库管理系统(后续简称MySQL
),是一款知名的数据库系统,其特点是:轻量、简单、功能丰富。
本教程分为两部分:
Centos7
安装MySQL 5.7
Centos7
安装MySQL 8.x
Centos7 安装 MySQL 5.7
注意:安装操作需要root权限
1.安装
-
配置
yum
仓库(MySQL
不在Centos
的官方仓库内,所以通过以下命令配置MySQL
的yum
仓库)# 更新密钥 rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022 # 安装Mysql yum库 rpm -Uvh http://repo.mysql.com//mysql57-community-release-el7-7.noarch.rpm
-
使用
yum
安装MySQL
# yum安装Mysql yum -y install mysql-community-server
-
启动
MySQL
并设置开机自启systemctl start mysqld # 启动 systemctl enable mysqld # 开机自启
-
检查
MySQL
的运行状态systemctl status mysqld
2.配置
配置管理员用户root
的密码以及配置允许远程登录的权限。
-
获取
MySQL
的初始密码# 通过grep命令,在/var/log/mysqld.log文件中,过滤temporary password关键字,得到初始密码 cat /var/log/mysqld.log |grep 'temporary password'
-
登陆
MySQL
# 执行 mysql -uroot -p # 解释 # -u,登陆的用户,MySQL数据库的管理员用户同Linux一样,是root # -p,表示使用密码登陆 # 执行完毕后输入刚刚复制的初始密码,即可进入MySQL数据库
-
修改
root
用户密码# 在MySQL控制台内执行 ALTER USER 'root'@'localhost' IDENTIFIED BY '密码'; -- 密码需要符合:大于8位,有大写字母,有特殊符号,不能是连续的简单语句如123,abc
-
[拓展] 可以通过以下命令配置简单的root密码
# 降低Mysql的密码安全级别 set global validate_password_policy=LOW; # 密码安全级别低 set global validate_password_length=4; # 密码长度最低4位即可 # 然后就可以用简单密码了(仅在测试或学习过程中设置,实际生产请勿设置简单密码) ALTER USER 'root'@'localhost' IDENTIFIED BY '简单密码';
-
配置
root
用户远程登录注意,允许
root
远程登录会带来安全风险# 授权root远程登录 grant all privileges on *.* to root@"IP地址" identified by '密码' with grant option; # IP地址即允许登陆的IP地址,也可以填写%,表示允许任何地址 # 密码表示给远程登录独立设置密码,和本地登陆的密码可以不同 # 刷新权限,立即生效 flush privileges;
现在就可以尝试使用各种MySQL
管理工具远程连接Linux服务器的MySQL
数据库了
如果出现这种情况,需要先关闭linux
服务器的防火墙
# 关闭防火墙
systemctl stop firewalld.service
# 开机禁用防火墙
systemctl disable firewalld.service
再次测试连接
-
退出
MySQL
# 退出命令 exit # 或者通过快捷键 Ctrl+D
至此,Centos7
安装MySQL5.7
安装完成。
Centos7 安装 MySQL 8.0
1.安装
-
配置
yum
仓库(MySQL
不在Centos
的官方仓库内,所以通过以下命令配置MySQL
的yum
仓库)# 更新密钥 rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022 # 安装Mysql8.x版本 yum库 rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-2.noarch.rpm
-
使用
yum
安装MySQL
# yum安装Mysql yum -y install mysql-community-server
-
启动
MySQL
并设置开机自启systemctl start mysqld # 启动 systemctl enable mysqld # 开机自启
-
检查
MySQL
的运行状态systemctl status mysqld
2.配置
配置管理员用户root
的密码以及配置允许远程登录的权限。
-
获取
MySQL
的初始密码# 通过grep命令,在/var/log/mysqld.log文件中,过滤temporary password关键字,得到初始密码 cat /var/log/mysqld.log |grep 'temporary password'
-
登陆
MySQL
# 执行 mysql -uroot -p # 解释 # -u,登陆的用户,MySQL数据库的管理员用户同Linux一样,是root # -p,表示使用密码登陆 # 执行完毕后输入刚刚复制的初始密码,即可进入MySQL数据库
-
修改
root
用户密码# 在MySQL控制台内执行 ALTER USER 'root'@'localhost' IDENTIFIED BY '密码'; -- 密码需要符合:大于8位,有大写字母,有特殊符号,不能是连续的简单语句如123,abc
-
[拓展] 可以通过以下命令配置简单的root密码
# 降低Mysql的密码安全级别 set global validate_password.policy=LOW; # 密码安全级别低 set global validate_password.length=4; # 密码长度最低4位即可 # 然后就可以用简单密码了(仅在测试或学习过程中设置,实际生产请勿设置简单密码) ALTER USER 'root'@'localhost' IDENTIFIED BY '简单密码';
-
配置
root
用户远程登录注意,允许
root
远程登录会带来安全风险# 第一次设置root远程登录,并配置远程密码使用如下SQL命令 create user 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码!'; -- 密码需要符合:大于8位,有大写字母,有特殊符号,不能是连续的简单语句如123,abc # 后续修改密码使用如下SQL命令 ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码';
现在就可以尝试使用各种MySQL
管理工具远程连接Linux服务器的MySQL
数据库了
如果出现这种情况,需要先关闭linux
服务器的防火墙
# 关闭防火墙
systemctl stop firewalld.service
# 开机禁用防火墙
systemctl disable firewalld.service
再次测试连接
-
退出
MySQL
# 退出命令 exit # 或者通过快捷键 Ctrl+D
至此,Centos7
安装MySQL8.x
安装完成。