详见链接https://blog.csdn.net/weixin_42266606/article/details/80879571
(此处我的本地用户名root,密码root;远程用户名root,密码12345)
1.下载 MySQL 所需要的安装包
网址:https://dev.mysql.com/downloads/mysql/
2.Select Operating System: 选择 Red Hat ,CentOS 是基于红帽的,Select OS Version: 选择 linux 7
3.选择 RPM Bundle 点击 Download
4.点击 No thanks, just start my download. 进行下载
5.下载好了
6.打开 VMware,选中要使用的虚拟机,点击开启此虚拟机
7.最小化虚拟机,不用管他了
8.打开 xshell,选择虚拟机 ip 所对应的会话,点击连接
9.连接成功
10.通过 rpm -qa | grep mariadb 命令查看 mariadb 的安装包
11.通过 rpm -e mariadb-libs-5.5.56-2.el7.x86_64 --nodeps 命令装卸 mariadb
12.通过 rpm -qa | grep mariadb 命令再次查看 mariadb 的安装包
13.通过 cd /usr/local/ 命令进入根目录下的usr目录下的local目录,这个目录是放一些本地的共享资源的
14.通过 ll 命令查看一下当前目录下的目录结构
15.通过 mkdir mysql 命令 在当前目录下创建一个名为 mysql 的目录
16.通过 ll 命令查看一下当前目录下的目录结构,刚创建的 mysql 目录有了
17.通过 cd mysql 命令进入 mysql 目录
18.通过 ll 命令查看一下当前目录下的目录结构
19.点击 窗口 -->> 传输新建文件,通过 ftp 协议来把刚下载好的 mysql 安装包传输到 CentOS7 系统中
20.在左边找到你 mysql 安装包的下载目录
21.在你想要传输的文件上单机右键,点击传输
22.上传成功后,关闭 ftp 传输工具
23.通过 ll 命令查看一下当前目录下的目录结构
24.通过 tar -xvf mysql-8.0.11-1.el7.x86_64.rpm-bundle.tar 命令解压 tar 包
解压到/usr/local/mysql
25.通过 clear 命令清一下屏
26.通过 rpm -ivh mysql-community-common-8.0.11-1.el7.x86_64.rpm --nodeps --force 命令安装 common
27.通过 rpm -ivh mysql-community-libs-8.0.11-1.el7.x86_64.rpm --nodeps --force 命令安装 libs
28.通过 rpm -ivh mysql-community-client-8.0.11-1.el7.x86_64.rpm --nodeps --force 命令安装 client
29.通过 rpm -ivh mysql-community-server-8.0.11-1.el7.x86_64.rpm --nodeps --force 命令安装 server
30.通过 rpm -qa | grep mysql 命令查看 mysql 的安装包
31.通过以下命令,完成对 mysql 数据库的初始化和相关配置
yum -y install libaio;
mysqld --initialize;
chown mysql:mysql /var/lib/mysql -R;
systemctl start mysqld.service;
systemctl enable mysqld;
32.通过 cat /var/log/mysqld.log | grep password 命令查看数据库的密码
33.通过 mysql -uroot -p 敲回车键进入数据库登陆界面
34.输入刚刚查到的密码,进行数据库的登陆,复制粘贴就行,MySQL 的登陆密码也是不显示的
35.通过 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root'; 命令来修改密码(此处必须修改密码)
36.通过 exit; 命令退出 MySQL,然后通过新密码再次登陆
37.通过以下命令,进行远程访问的授权
create user 'root'@'%' identified with mysql_native_password by 'root';
grant all privileges on *.* to 'root'@'%' with grant option;
flush privileges;
37的注释:
新版SQL授权用户时报错 near 'IDENTIFIED BY '密码' with grant option' at line 1
1 问题:
当使用 grant 权限列表 on 数据库 to ‘用户名’@’访问主机’ identified by ‘密码’; 时会出现”……near ‘identified by ‘密码” at line 1”这个错误
2 原因:
因为新版的的mysql版本已经将创建账户和赋予权限的方式分开了
3解决办法:
创建账户:create user ‘用户名’@’访问主机’ identified by ‘密码’;
赋予权限:grant 权限列表 on 数据库 to ‘用户名’@’访问主机’ ;(修改权限时在后面加with grant option)
38.通过 ALTER USER 'root'@'localhost' IDENTIFIED BY 'root' PASSWORD EXPIRE NEVER; 命令修改加密规则,MySql8.0 版本 和 5.0 的加密规则不一样,而现在的可视化工具只支持旧的加密方式。
39.通过 flush privileges; 命令刷新修该后的权限
40.通过 exit; 命令退出 MySQL
41.通过以下命令,关闭 firewall
systemctl stop firewalld.service;
systemctl disable firewalld.service;
systemctl mask firewalld.service;
42.通过 yum -y install iptables-services 命令安装 iptables 防火墙
43.通过以下命令启动设置防火墙
systemctl enable iptables;
systemctl start iptables;
44.通过 vim /etc/sysconfig/iptables 命令编辑防火墙,添加端口
45.点击 i 键进入插入模式
46.在相关位置,写入以下内容
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8090 -j ACCEPT
47.点击 ESC 键退出插入模式
48.点击 : 键,输入 wq 敲回车键保存退出,: 为英文状态下的
49.通过 systemctl restart iptables.service 命令重启防火墙使配置生效
50.通过 systemctl enable iptables.service 命令设置防火墙开机启动
51.通过 ifconfig 命令查看 ip
52.新建 SQLyog 的连接
53.连接成功