1、检查是否已安装mysql
ps aux | grep mysql
1.1 MySQL安装
1.1.1 下载wget命令
yum -y install wget
1.1.2 在线下载mysql安装包
wget https://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
1.1.3 安装MySQL
rpm -ivh mysql57-community-release-el7-8.noarch.rpm
1.1.4 安装mysql服务
cd /etc/yum.repos.d/
yum -y install mysql-server
1.1.5 启动MySQL
systemctl start mysqld
1.2 修改MySQL临时密码
MySQL安装成功后会有一个临时密码,我们可以使用grep命令查看临时密码先登录进去MySQL,然后修改MySQL密码。
1.2.1 获取MySQL临时密码
grep 'temporary password' /var/log/mysqld.log
1.2.2 使用临时密码先登录
mysql -uroot -p
1.2.3 把MySQL的密码校验强度改为低风险
set global validate_password_policy=LOW;
1.2.4 修改MySQL的密码长度
set global validate_password_length=5;
1.2.5 修改MySQL密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'admin';
1.3 允许远程访问
1.3.1 首先要关闭Cenots的防火墙
sudo systemctl disable firewalld
1.3.2 修改MySQL允许任何人连接
1)首先登录MySQL
mysql -uroot -padmin
2)切换到mysql数据
use mysql;
3)查看user表
select Host,User from user;
发现root用户只允许localhost主机登录登录。
4)修改为允许任何地址访问
update user set Host='%' where User='root';
5)刷新权限
flush privileges;
1.3.3 使用Navicat连接工具测试
大功告成
开放端口
查看 firewall-cmd --zone= public --query-port=3306/tcp
添加 firewall-cmd --zone=public --add-port=3306/tcp --permanent
重新载入 firewall-cmd --reload
查看全部 firewall-cmd --zone=public --list-ports
解决ONLY_FULL_GROUP_BY问题
需修改mysql配置文件,通过手动添加sql_mode的方式强制指定不需要ONLY_FULL_GROUP_BY属性,
my.cnf位于etc文件夹下,vim下光标移到最后,添加如下:
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
重启mysql服务,顺利解决。