centos7下yum方式安装mysql8.0
1、安装前工作
(1)查看系统中原有的软件包和依赖包,若包存在则进行删除操作
# 查找所有mysql软件包和依赖包
rpm -pa | grep mysql
# 删除所有查询到的结果
yum remove mysql-community-***-***
(2)删除mysql配置文件
# 查找mysql的配置文件
find / -name mysql
# 删除所有查询到的配置文件,例如
rm -rf /usr/lib64/mysql
(3)删除MariaDB的文件,由于MySQL在CentOS7中收费了,所以CentOS7内部集成了mariadb来替代了MySQL,而安装MySQL的话会和MariaDB的文件冲突,所以需要先卸载掉MariaDB。首先查找出要删除的MariaDB文件,执行如下命令:
rpm -pa | grep mariadb
若有查询结果则开始删除程序:
rpm -e mariadb-***-***
# 若程序文件删除失败,则采用强制删除
rpm -e --nodeps mariadb-***-***
2、安装mysql
(1)获取repo文件地址
(2)下载并repo文件
wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
(3)安装repo文件
rpm -ivh mysql80-community-release-el7-3.noarch.rpm
(4)更新yum
yum clean all
yum makecache
(5)查看mysql版本
yum repolist all | grep mysql
若是想要安装的版本为禁用状态,需要把/etc/yum.repos.d/mysql-community.repo文件内的enabled参数修改为1,enabled的参数为0时代表禁用,参数为1时代表启用。
(6)安装mysql
安装过程中询问是否继续时选择继续
yum install mysql-community-server
(7)启动MySQL服务
systemctl start mysqld.service
# 其他MySQL服务操作
systemctl restart mysqld.service # 重启MySQL服务
systemctl stop mysqld.service # 关闭MySQL服务
systemctl enable mysqld.service # 开机自启MySQL服务
systemctl disable mysqld.service # 关闭开机自启MySQL服务
3、登录MySQL
mysql在安装后会创建一个root账户,并且把初始的密码放到了/var/log/mysqld.log文件中,可以在文件中查看初始密码,代码如下:
cat /var/log/mysqld.log
使用初始化密码登录后不能操作数据库,需要修改密码后才能操作。修改密码的代码如下:
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
但密码过于简单时不符合安全策略,会出现如下错误:
ERROR 1819 (HY000): Your password does not satisfy the current policy requ
解决访问两种,一是设置复杂密码(用户需牢记),二是修改安全策略等级,修改安全策略等级操作如下:
-- 查看mysql服务器的密码安全策略等级
SHOW VARIABLES LIKE 'validate_password%';
set global validate_password.policy=LOW; -- 设置安全策略等级为低
set global validate_password.length=4; -- 设置密码长度限制为4
4、远程连接数据库
连接远程主机数据库代码如下:
mysql -h 192.168.2.11 -P 3306 -u root -p
数据库默认关闭远程连接,需要修改配置才能连接,代码如下:
update user set host='%' where user='root'
修改配置后重启MySQL服务即可远程连接,若远程主机数据库开启远程访问后还是连接不上,则检查远程主机的防火墙是否关闭,若远程主机的防火墙没有关闭,会导致远程主机积极的拒绝连接请求。