- 卸载mysql 或 mariadb
[root@elk-node2 ~]#rpm -qa|grep -i mysql
[root@elk-node2 ~]#rpm -qa|grep mariadb
[root@elk-node2 ~]#yum remove mariadb*
[root@MYSQL local]# cat /etc/my.cnf
cat: /etc/my.cnf: 没有那个文件或目录
[root@MYSQL local]# rm /etc/my.cnf
rm: 无法删除"/etc/my.cnf": 没有那个文件或目录
- 配置网络
[root@MYSQL local]# ifconfig
[root@MYSQL local]# cat /etc/sysconfig/network-scripts/ifcfg-ens33
##重启网络
[root@elk-node2 ~]#service network restart
[root@MYSQL local]# hostname
-----------------------------------------------------------------------------
MYSQL8.COM
-----------------------------------------------------------------------------
[root@MYSQL local]#vim /etc/sysconfig/network
-----------------------------------------------------------------------------
NETWORKING=yes
HOSTNAME=MYSQL8
-----------------------------------------------------------------------------
[root@MYSQL local]# # vim /etc/hosts
-----------------------------------------------------------------------------
192.168.40.8 MYSQL8
-----------------------------------------------------------------------------
[root@ZKA ~]# cat /etc/hostname
MYSQL8.COM
#数据库服务器的的 selinux 都要 disable(永久关闭 selinux,请修改/etc/selinux/config,将 SELINUX 改为 disabled)
[root@MYSQL local]# vim /etc/selinux/config
-----------------------------------------------------------------------------
SELINUX=disabled
-----------------------------------------------------------------------------
3.改防火墙设置,打开 3306 端口:
[root@MYSQL local]# vim /etc/sysconfig/iptables
增加如下行:
-----------------------------------------------------------------------------
## MySQL
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
-----------------------------------------------------------------------------
重启防火墙:
[root@MYSQL local]# service iptables restart
4.配置Mysql 8.0安装源:
sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
安装Mysql 8.0
sudo yum --enablerepo=mysql80-community install mysql-community-server
启动Mysql服务
sudo service mysqld start
查看Mysql服务状态
service mysqld status
5.查看root用户临时密码
grep "A temporary password" /var/log/mysqld.log
gu<p35Dxd&#l
6.配置Mysql安全策略
mysql_secure_installation
root/xag@163.COM
mysql -uroot -pxag@163.COM
mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=1;
set global validate_password_mixed_case_count=2;
mysql> set global validate_password.policy=0;
set global validate_password.length=1;
CREATE USER 'system'@'%' IDENTIFIED BY '123456';
GRANT ALL ON *.* TO 'system'@'%';
(ALL表示授予所有权限、*.*表示所有数据库中的所有表、%表示任意IP可以远程连接)
其他权限:ALTER、ALTER ROUTINE、CREATE、CREATE ROUTINE、CREATE TABLESPACE、CREATE TEMPORARY TABLES、CREATE USER、CREATE VIEW、DELETE、DROP、EVENT、EXECUTE、FILE、GRANT OPTION、INDEX、INSERT、LOCK TABLES、PROCESS、PROXY、REFERENCES、RELOAD、REPLICATION CLIENT、REPLICATION SLAVE、SELECT、SHOW DATABASES、SHOW VIEW、SHUTDOWN、SUPER、TRIGGER、UPDATE、USAGE。
例如GRANT INSERT,SELECT,UPDATE ON *.* TO '[用户名]'@'%';
Mysql 8.0的新特性,旧版本Navicat不支持。
解决方案两种:
①以旧版的方式重新设置远程用户的密码。
ALTER USER 'system'@'%' IDENTIFIED WITH mysql_native_password BY '123456';