linux安装mysql8.0及开启远程访问
Posted Goxcheer
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux安装mysql8.0及开启远程访问相关的知识,希望对你有一定的参考价值。
第一步:获取mysql8.0的yum源
进入mysql官网获取RPM包下载地址
https://dev.mysql.com/downloads/repo/yum/
点击下载后,
右键复制链接地址 https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
这个就是下载地址。
第二步 下载和安装mysql源
未安装wget指令,需要先安装。
yum -y install wget
安装成功之后,下载mysql源
然后执行 wget https://dev.mysql.com/get/mysql80-community-release-el7-11.noarch.rpm
下载完毕之后,安装mysql源
yum -y localinstall mysql80-community-release-el7-11.noarch.rpm
第三步:在线安装Mysql
yum -y install mysql-community-server
下载的东西比较多 要稍微等会;
第四步:启动Mysql服务
systemctl start mysqld
第五步:设置开机启动
systemctl enable mysqld
systemctl daemon-reload
第六步:修改root本地登录密码
mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个临时的默认密码。
[root@localhost ~]# vi /var/log/mysqld.log
发现有一个临时密码 k>Ey>8bCws=s
此时需要修改为自己的密码
输入临时密码之后,
ALTER USER \'root\'@\'localhost\' IDENTIFIED BY \'Qigaoxiang2018@\'; 注意:名字必须有大写字母,数字和特殊符号
第七步:设置允许远程登录和开启防火墙
Mysql默认不允许远程登录,所以需要开启远程访问权限
可以先查看user表
select user,authentication_string,host from user;
默认都是localhost
update user set host = \'%\' where user = \'root\';
此时root的host是所有都可以了
然后刷新修改,FLUSH PRIVILEGES;
这步一定要做,否则无法生效。
然后开启防火墙
[root@localhost ~]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
success
[root@localhost ~]# firewall-cmd --reload
success
[root@localhost ~]#
第八步 : 配置默认编码为utf8
修改/etc/my.cnf配置文件,在[mysqld]下添加编码配置,如下所示:
[mysqld]
character_set_server=utf8
init_connect=\'SET NAMES utf8\'
编辑保存完 重启mysql服务;
[root@localhost ~]# systemctl restart mysqld
[root@localhost ~]#
查看下编码:
mysql> show variables like \'%character%\';
可以看出已经改为utf8字符了
至此,通过本地如果仍然访问不了,可能是mysql第三方客户端版本太低,不支持mysql8.0的加密方式。
如何处理参见:https://www.cnblogs.com/goxcheer/p/9420538.html
以上是关于linux安装mysql8.0及开启远程访问的主要内容,如果未能解决你的问题,请参考以下文章
linux(CentOS7.6)下安装mysql8.0并使用navicat远程访问