linux CentOS8安装mysql
一、下载
https://dev.mysql.com/downloads/repo/yum/
可以用指令:
# cd /opt/software/
# wget http://repo.mysql.com/mysql80-community-release-el8-2.noarch.rpm
二、安装
# yum -y install mysql80-community-release-el8-2.noarch.rpm
三、MySQL服务器的安装
先禁用默认的mysql模块,否则可能报错“未匹配的参数”
# yum module disable mysql
再进行安装:
# yum -y install mysql-community-server
四、启动mysql
启动
# systemctl start mysqld.service
查看运行状态
# systemctl status mysqld.service
可以看到处于active
此时,需要登录还要找到mysql的初始密码。这里初始密码是一串随机生成的字符串,需要登陆进去修改密码后才能使用。通过以下命令可以找到密码:
# grep "password" /var/log/mysqld.log
这个密码就是初始密码,然后通过以下命令进入mysql:
# mysql -uroot -p
再输入密码(图中红色框)。此时还不能做任何事情,需要修改密码。
五、密码修改
密码修改:
# mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
更改密码规则(此步可以跳过...):
# mysql> set global validate_password.length=4;
# mysql> set global validate_password.policy=0;
# mysql> set global validate_password.check_user_name = 0;
刷新:
# mysql> flush privileges;
六、使用mysql
进入库
# mysql> use mysql;
查询
# mysql> select host, user from user;
授权MySQL,允许远程用户登录访问MySQL
# mysql> update user set host = '%' where user = 'root';
# mysql> flush privileges;
设置root权限,刷新
# mysql> GRANT ALL ON *.* TO 'root'@'%' ;
# mysql> flush privileges;
退出,重启mysql
# mysql> exit
# service mysqld restart
七、navicat远程连接mysql
本地远程测试 ip 和 3306端口号 通不通:
# ping 192.168.18.124
# telnet 192.168.18.124 3306
在上一步中,改表授权远程登录还不够,还需要防火墙开放3306
端口访问。
防火墙开放3306
端口:
查看防火墙某个端口是否开放
# firewall-cmd --query-port=3306/tcp
开放防火墙端口3306,重启防火墙生效
# firewall-cmd --zone=public --add-port=3306/tcp --permanent
重启防火墙
# systemctl restart firewalld
尝试连接,报错如下:
2059 - authentication plugin 'caching_sha2_password'
解决方式,参见:# Navicat连接数据库报错2059 - authentication plugin...错误解决方法
修改mysql密码,使用 mysql_native_password
加密方式:
# mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '密码';
测试连接后,成功:
image.png
windows64 安装参考:https://blog.csdn.net/milkbrother1988/article/details/103540583