centos 7 安装 mysql 8.0.18

时间:2021-11-23 04:00:49

MySQL Community Downloads :https://dev.mysql.com/downloads/mysql/

一、检查是否应安装了mysql或者mariadb,有的话卸载

1.1 检查mariadb

rpm -qa | grep mariadb

centos 7 安装 mysql 8.0.18
1.2 删除mariadb

yum -y remove mariadb-*

1.3 检查mysql

rpm -qa | grep mysql

1.4 删除mysql

yum -y remove mysql-*

1.5 删除旧的配置文件

rm -rf /etc/my.cnf

二、安装mysql

2.1 配置安装源

sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

2.2 安装

sudo yum --enablerepo=mysql80-community install mysql-community-server

centos 7 安装 mysql 8.0.18
2.3 启动mysql
启动

systemctl start mysqld

查看运行状态

systemctl status mysqld

停止

systemctl stop mysqld

重启

systemctl restart mysqld

centos 7 安装 mysql 8.0.18
2.4 查看端口运行情况

netstat -nlpt

centos 7 安装 mysql 8.0.18

三、查看并修改密码

3.1 mysql安装后会生成一个默认密码,此密码登录后要修改密码,不能用于其他操作

cat /var/log/mysqld.log

centos 7 安装 mysql 8.0.18
3.2 登录root账号修改初始密码,复制上面的密码登录

mysql -u root -p

修改密码,注意密码要稍微复杂点(大小写 符号 数字),不然会提示 Your password does not satisfy the current policy requirements

ALTER USER USER() IDENTIFIED BY '[email protected]';

四、配置远程访问

4.1 查下系统用户,root默认是不允许远程访问的,需要把下图root账户的localhost改成%

use mysql;
select user,host,authentication_string from mysql.user;

centos 7 安装 mysql 8.0.18

4.2 修改root的权限并刷新权限

update mysql.user set host='%' where user='root';
flush privileges;

五、新建mysql账号 授权

5.1 新建test账号,%表示允许远程登录 ,改成ip就是ip登录

create user 'test'@'%' identified by '[email protected]';

下面是是授权部分:
5.2 给test用户授予testdb数据库的所有权限(可远程登陆)

grant all privileges on testdb.* to 'test'@'%';
flush privileges;

5.3 给test用户授予testdb数据库的查询权限(可远程登陆)

grant select on testdb.* to 'test'@'%';
flush privileges;

5.4 给test用户授予testdb数据库的insert,delete,update权限(可远程登陆)

grant insert,delete,update on testdb.* to 'test'@'%';
flush privileges;

5.5 查看用户的权限

show grants for 'test'@'%';

centos 7 安装 mysql 8.0.18
5.6 删除test用户对数据testdb的update权限

revoke update on testdb.* from 'test'@'%';
flush privileges;

centos 7 安装 mysql 8.0.18

六、修改mysql端口

6.1 编辑my.cnf

vi /etc/my.cnf

6.2 默认配置不含port行需自行添加,按esc退出INSERT模式 :wq 保存
port=6666

6.3 重启mysql并查看端口状态 注意:如果是云服务器(如阿里云),一定要检查安全组是否开启相应的端口,不然客户端连不上

systemctl restart mysqld
netstat -nlpt

centos 7 安装 mysql 8.0.18

七、修改mysql的数据、日志存放路径

7.1 先停止msyql

systemctl stop mysqld

7.2 先创建好要存储的位置

mkdir -p /data/mysql & cd /data/mysql

7.3 把文件移到/data/mysql/文件夹下,cp -a参数是权限也一起复制

cp -a /var/lib/mysql /data/

7.4 修改软连接

ln -s /data/mysql /var/lib/

7.5 查看软连接

ls -la /var/lib/mysql

7.6 修改my.cnf配置文件

vim /etc/my.cnf
属性 原值 修改为
datadir /var/lib/mysql /data/mysql
socket /var/lib/mysql/mysql.sock /data/mysql/mysql.sock

datadir=/data/mysql
socket=/data/mysql/mysql.sock

7.7 启动mysql并查看状态

systemctl start mysqld

7.8 登录mysql,查看数据文件

mysql -u root -p
show global variables like "