CentOS:安装MySQL
测试成功环境:CentOS7安装MySQL5.7、CentOS8安装MySQL5.7或MySQL8.0
1. MySQL Yum Repository
推荐
1.1. 下载MySQL
官方下载可以使用下面下载,也可以自己挑选指定下载。
# 只用下载一个根据自己需要安装的版本
# 1. 下载MySQL5.7
wget https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm
# 2. 下载MySQL8.0
wget https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm
1.2. 安装MySQL
注意:如果是CentOS8,需要添加命令
yum module disable mysql
# 例:sudo rpm -Uvh mysql57-community-release-el7-11.noarch.rpm
sudo rpm -Uvh {下载的文件}
sudo yum install mysql-community-server
1.3. 启动MySQL
sudo systemctl start mysqld.service
1.4. 查看初始生产的密码
注意:如果之前安装过MySQL,会继续使用之前密码
# 查看MySQL生成的密码
sudo grep 'root@localhost:' /var/log/mysqld.log
# 上面命令执行的结果,后面就有密码,每个人的都不一样
2018-08-05T06:04:59.838779Z 1 [Note] A temporary password is generated for root@localhost: :sm*Zo6t:-?f
1.5. 修改初始密码
使用初始密码登录很多操作都会强制要求去修改密码在操作
ALTER USER 'root'@'localhost' IDENTIFIED BY '新的密码';
1.6. 配置远程登录
系统默认root用户是无法远程登录的,需要修改mysql数据下user表下root用户的HOST字段
# 切换到mysql数据库
use mysql;
# 将HOST字段由localhost改为%
update user set host = '%' where user ='root';
# 加载改变
flush privileges;
2. RPM安装
2.1. 下载
官网下载连接此处以MySQL8.0为例
# MySQL8.0
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.22-1.el8.x86_64.rpm-bundle.tar
2.2. 解压
tar -xvf mysql-8.0.22-1.el8.x86_64.rpm-bundle.tar
2.3. 安装依赖
dnf install -y compat-openssl10 net-tools libaio perl
2.4. 安装MySQL
不同版本解压出来可能不同,按下面顺序从上往下安装,提示缺哪个在去解压里面找单独安装,如果解压出来出现没有下面的rpm包直接跳过。
rpm -ivh mysql-community-common-8.0.22-1.el8.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.0.22-1.el8.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.22-1.el8.x86_64.rpm
rpm -ivh mysql-community-client-8.0.22-1.el8.x86_64.rpm
rpm -ivh mysql-community-server-8.0.22-1.el8.x86_64.rpm
2.5. 启动MySQL
sudo systemctl start mysqld.service
2.6. 查看初始生产的密码
注意:如果之前安装过MySQL,会继续使用之前密码
# 查看MySQL生成的密码
sudo grep 'root@localhost:' /var/log/mysqld.log
# 上面命令执行的结果,后面就有密码,每个人的都不一样
2018-08-05T06:04:59.838779Z 1 [Note] A temporary password is generated for root@localhost: :sm*Zo6t:-?f
2.7. 修改初始密码
使用初始密码登录很多操作都会强制要求去修改密码在操作
ALTER USER 'root'@'localhost' IDENTIFIED BY '新的密码';
2.8. 配置远程登录
系统默认root用户是无法远程登录的,需要修改mysql数据下user表下root用户的HOST字段
# 切换到mysql数据库
use mysql;
# 将HOST字段由localhost改为%
update user set host = '%' where user ='root';
# 加载改变
flush privileges;
3. 常用
3.1. 常用命令
- 启动命令:sudo systemctl start mysqld.service
- 停止命令:sudo systemctl stop mysqld.service
- 查看状态:sudo systemctl status mysqld.service
3.1. 配置文件
3.2.1. UTF-8字符集
# /etc/my.cnf添加
character-set-server=utf8