Yo!最新的 Centos 里装最新的 MySQL
嗨,我是你稳定更新、持续输出的勾勾。
今天工作闲了下来,又是愉快摸鱼的一天(。・∀・)ノ゙。
听说 MySQL 和 Centos 都升级到 8 这个版本了!就冲这个吉利数,也要让二者结合在一起。
我在 Centos 8 下安装了 MySQL 8,以下是操作流程。
安装 MySQL
先登录服务器,然后查询 MySQL 是否安装。
rpm -qa | grep mysql
[root@10-9-155-122 ~]# rpm -qa | grep mysql
mysql-errmsg-8.0.21-1.module_el8.2.0+493+63b41e36.x86_64
mysql-common-8.0.21-1.module_el8.2.0+493+63b41e36.x86_64
mysql-8.0.21-1.module_el8.2.0+493+63b41e36.x86_64
mysql80-community-release-el8-1.noarch
mysql-server-8.0.21-1.module_el8.2.0+493+63b41e36.x86_64
[root@10-9-155-122 ~]#
安装需要卸载。
rpm -e packagename
[ ]
依次删除安装好的 MySQL。
最后将之前安装好的 MySQL 全部删除。
注意:删除的时候不能全选一项后。右击 copy 直接右击 paste,否则报错。
安装 MySQL 8
参考网址:https://learnku.com/articles/38526
下载 rpm 包。
wget https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm
安装 rpm 包。
yum localinstall mysql80-community-release-el8-1.noarch.rpm
Yum 安装。
yum install mysql-server
检查 MySQL 是否安装成功。
rpm -qa | grep mysql
无密码登录。首次连接 MySQL 无需密码。
mysql -uroot
重置密码。
use mysql; //选择数据库
alter user 'root'@'localhost' identified by 'newpassword'; //修改密码
flush privileges; //刷新权限表
//备注:mysql8.0修改用户密码命令(新的修改方式)
注意,这是 MySQL 8 提供的修改用户密码的命令,其他版本不一样。
重新登录。
mysql -uroot -pnewpassword
登录之后看下,用户名和对应的 host。
在 MySQL 这个数据库中使用 select host,user from user;。
首次的结果是这样的。
Root 对应的 host 不是 %。% 代表任意的 ip 都可以访问,localhost 代表本地,只能在当前服务器内访问。所以我们要修改 root 对应的 host,便于我们线下开发。
线下连接远程 mysql
排除网路和防火墙问题。使用 ping ip 地址看能否连接网络。
这说明没有问题。
配置防火墙,开启 3306 端口。
# 下面指令可无脑依次执行
# 1.查看防火墙状态 systemctl status firewalld.service
# 2.开启防火墙systemctl start firewalld.service
# 3.开放3000端口firewall-cmd --zone=public --add-port=3000/tcp --permanent
# 4.重启防火墙使新设置生效firewall-cmd --reload
# 5.查看已经打开放的端口firewall-cmd --list-ports
检查开放端口。
firewall-cmd --list-ports
开放 3306 端口。先使用指令 telnet 192.168.1.211 3306 看能不能连上 3306 端口,连接不成功就需要开放 3306 端口了。
[ ]
success
[ ]
9090/tcp 80/tcp
注意,端口开放成功但是没有 3306.tcp,原因是我们要回到 uclund 中添加 3306 的规则。
添加之后再进行操作就有了 3306 端口。
开放 root 用的 ip。
mysql -u root -p
use mysql;
Database changed
set host=’%’ where user=’root’; update user
Query OK, 0 rows affected (0.00 sec)
Rows matched: 1 Changed: 0 Warnings: 0
select host,user from user;
使用 mysql 连接远程 mysqld
在线下本地打开一个终端,前提是安装了 mysql 客户端,否则找不到 mysql 指令。
mysql -h117.75.79.112 -uroot -pnewpassword
这个报错,不建议使用 ssl 连接。
参考文献:https://www.cnblogs.com/plluoye/p/11182945.html
mysql -h117.75.79.112 -uroot -pnewpassword --ssl-mode=DISABLED
这样,线下本地就连接上了远程数据库 MySQL 了。
推荐阅读:
点点“赞”和“在看”,保护头发,减少bug。