- # 1.下载MySQL 官方的 Yum Repository
- wget https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm
- # 2.安装repo,执行完成后会在/etc/yum.repos.d/目录下生成两个repo文件 mysql-community.repo mysql-community-source.repo
- rpm -ivh mysql80-community-release-el7-1.noarch.rpm
- # 3.安装MySQL服务器
- yum install mysql-server
- # 4.开启mysql
- systemctl start mysqld.service
- # 关闭和查看当前状态
- systemctl start mysqld.service
- systemctl status mysqld.service
- systemctl restart mysqld.service
输入mysql命令默认进入root用户,默认无密码,并且仅只能从localhost(即本地主机)登入。
远程访问出现10060表示,mysql服务器防火墙没有开放端口(这里是默认端口)
- # 1.远程访问需要开放端口
- # 查看防火墙是否在运行状态 可以执行的指令status、start、stop、restart
- systemctl status firewalld
- # 2.在防火墙运行状态下,开放mysql的3306标准端口,结果出现success
- firewall-cmd --permanent --zone=public --add-port=3306/tcp
- # 3.刷新防火墙,结果出现success
- firewall-cmd --reload
远程访问出现1130表示,需要访问的root用户不支持从当前主机访问mysql服务器。 需要修改host字段
远程访问出现1045(28000)表示,需要访问的普通用户不支持从当前主机访问mysql服务器 ,需要修改host字段。
- --修改host项
- --(1)改表法 首先进入root用户 mysql -u root -p
- update mysql.user set host = '%' where user = 'root'; -- 更改user表,这里是对root的host字段进行修改,因为默认是localhost,外网就不能访问了
- flush privileges; -- 刷新
- select host, user from user; --查看
- --(2)授权法
- -- jupy用户使用默认的密码可以从任何主机连接到mysql服务器
- grant all privileges on *.* to 'jupy'@'%' with grant option;
- -- jupy用户使用新设置的密码只允许从ip为192.168.1.3的主机连接到mysql服务器
- GRANT ALL PRIVILEGES ON *.* TO 'jupy'@'192.168.1.101' IDENTIFIED BY 'newpassword' WITH GRANT OPTION;
- flush privileges;
- -- 查看权限
- SELECT * FROM mysql.user WHERE user='jupy'\G -- \G使每个字段打印到单独的行,也有’;'的作用