Yo!最新的 Centos 里装最新的 MySQL

勾勾的前端世界

共 2725字,需浏览 6分钟

 ·

2021-01-21 18:43

嗨,我是你稳定更新、持续输出的勾勾。



今天工作闲了下来,又是愉快摸鱼的一天(。・∀・)ノ゙


听说 MySQL 和 Centos 都升级到 8 这个版本了!就冲这个吉利数,也要让二者结合在一起。


我在 Centos 8 下安装了 MySQL 8,以下是操作流程。


安装 MySQL


先登录服务器,然后查询 MySQL 是否安装。

rpm -qa | grep mysql


[root@10-9-155-122 ~]# rpm -qa | grep mysqlmysql-errmsg-8.0.21-1.module_el8.2.0+493+63b41e36.x86_64mysql-common-8.0.21-1.module_el8.2.0+493+63b41e36.x86_64mysql-8.0.21-1.module_el8.2.0+493+63b41e36.x86_64mysql80-community-release-el8-1.noarchmysql-server-8.0.21-1.module_el8.2.0+493+63b41e36.x86_64[root@10-9-155-122 ~]#



安装需要卸载。

rpm -e packagename

[root@10-9-155-122 etc]# rpm -e mysql-community-release-el7-5.noarch



依次删除安装好的 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 端口了。

[root@10-9-155-122 ~]# firewall-cmd  --zone=public  --add-port=3306/tcp  --permanentsuccess[root@10-9-155-122 ~]# firewall-cmd --list-ports9090/tcp 80/tcp


注意,端口开放成功但是没有 3306.tcp,原因是我们要回到 uclund 中添加 3306 的规则。



添加之后再进行操作就有了 3306 端口。



开放 root 用的 ip。

#mysql -u root -pmysql> use mysql;Database changedmysql> update user set host=’%’ where user=’root’;Query OK, 0 rows affected (0.00 sec)Rows matched: 1 Changed: 0 Warnings: 0mysql> 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 了。


推荐阅读:

CRA 为什么要做成“黑盒”

不小心将 Webpack 升级后我搞定了微前端。

别觉得搞前端就不需要懂后台知识。

腾讯QQ偷我浏览记录到底想干嘛。

是我 Web 端配不上阿里了。


点点“”和“在看”,保护头发,减少bug。

浏览 17
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报