CentOs7上安装Mysql8.0数据库

1,203 阅读3分钟

背景

利用放假时间,在虚拟机上玩玩centos7,顺便想学习docker一键打包学习,顺便搭建的CentOS环境。本博客是小编通过收集资料学习后进行整理出来的,主要目的是用于个人学习,同时也希望帮助新手少走弯路而记录的一篇博客,如有不妥之处,请一一指出。

一、在root权限下 wget命令不能使用如图:

如果centos7不支持wget命令需要下载插件:

yum -y install wget

二.mysql数据库

1.下载mysql源安装包

在MySQL官网中下载YUM源rpm安装包:dev.mysql.com/downloads/r…

复制下载链接:dev.mysql.com/get/mysql80…

本次下载目录为:/home/目录,因此进入:cd /home

执行下载命令: wget dev.mysql.com/get/mysql80…

2.安装mysql源

下载完成后使用下面命令安装源: yum localinstall mysql80-community-release-el7-1.noarch.rpm

3.检查是否安装成功

yum repolist enabled | grep "mysql.-community."

4、安装mysql

直接使用命令: yum install mysql-community-server

三、启动mysql服务

1.启动 service mysqld start

2.查看启动状态 service mysqld status

3.设置开机启动 1.systemctl enable mysqld

2.systemctl daemon-reload

四、查看默认密码及修改密码

查看默认密码 grep 'temporary password' /var/log/mysqld.log

本地MySQL客户端登录 mysql -uroot -p

注,本次登录是输入mysql默认的密码

修改密码:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'TestSMC@123'; 或者 set password for 'root'@'localhost'=password('TestSMC@123');

五、添加远程登录用户

mysql数据root用户默认是没有远程操作权限的,默认只有localhost登录,则我们需要改变root远程登录权限。

修改root用户远程访问权限:

1.选择 mysql 数据库:use mysql;

2.在 mysql 数据库的 user 表中查看当前 root 用户的相关信息:

3.执行指令:select  host,user from user;

通过查询显示,root用户只具有localhost访问权限,则需要更改root远程访问权限,指令如下:

update user set host='%' where user ='root';

4.刷新指令,使更改数据生效:

flush privileges;

六、通过Navicat 远程连接数据库

完成上面的配置使用sqlyog链接时会出现2058的异常,此时我们需要修改mysql,命令行登录mysql(与修改密码中登录相同,使用修改后的密码),然后执行下面的命令:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; 其中password为自己修改的密码。然后Navicat 中重新连接,则可连接成功,OK。

如果报错:ERROR 1396 (HY000): Operation ALTER USER failed for 'root'@'localhost'则使用下面命令:

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password';

注:通过以上操作还是不能连接,则需要将CentOs7 3306端口进行开放,具体操作如下:

CentOS7的默认防火墙为firewall,且默认是不打开的。

systemctl start firewalld  # 启动friewall

systemctl status firewalld # 查看firewall启动情况

firewall-cmd --zone=public --add-port=3306/tcp --permanent   # 开启3306端口

firewall-cmd --reload 重启

firewall-cmd --query-port=3306/tcp 查看3306端口是否开启

七、修改默认编码方式

mysql8.0默认编码方式为utf8mb4,因此使用时不需要修改,可使用如下命令查看:

SHOW VARIABLES WHERE Variable_name LIKE 'character_set_%' OR Variable_name LIKE 'collation%';

八、用Navicat Lite for MySQL工具连接