乐趣区

centos7安装mysql8

留坑: 是否了解 rpm/yum/repo 之间的关系


1. 官网下载 rpm 源

MySQL Community Downloads

2. rz -be 上传下载的 mysql80-community-release-el7-3.noarch.rpm 文件到 centos7 某个任一目录下:
3. 将 rpm -ivh mysql80-community-release-el7-3.noarch.rpm
4. 而后进入: cd /etc/yum.repos.d/ 发现多了 mysql 的:
[root@niewj yum.repos.d]# ll
总用量 20
-rw-r--r-- 1 root root 1023 5 月  29 15:37 CentOS-Base.repo
-rw-r--r-- 1 root root  323 5 月  29 15:37 epel.repo
-rw-r--r-- 1 root root 2076 4 月  25 2019 mysql-community.repo
-rw-r--r-- 1 root root 2108 4 月  25 2019 mysql-community-source.repo
-rw-r--r-- 1 root root  182 6 月   1 13:10 nginx.repo
5. 然后 yum clean all yum makecache
6. yum install mysql-community-server 完成即可;
7. 加入 systemd 管理:

开机启动: systemctl enable mysqld.service
停止服务: systemctl stop mysqld.service
启动服务: systemctl start  mysqld.service
重启服务: systemctl restart  mysqld.service
查看状态: systemctl status mysqld.service
上面的 ”.service” 都是可以省略的

8. 默认防火墙是没开的, 如果需要开:
centos7  默认的防火墙是  firewalld 
放开  3306 端口:firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload;  // 重新加载配置
9.grep "password" /var/log/mysqld.log

找到 mysql 按照默认初始化的密码:

10. 用户和访问设置:
 登录 MySQL 修改 mysql 用户密码
mysql -u root -p

#修改密码
alter user 'root'@'localhost' identified by  'mypasswd!@#';

#远程设置
use mysql;
update user set host='%' where user='root';

#授权用户名的权限,赋予任何主机访问数据的权限
grant all privileges ON *.* to 'root'@'%' with grant option;
报错:ERROR 1410 (42000): You are not allowed to create a user with GRANT

update user set host='%' where user='root';
grant all privileges on *.* to 'root'@'%';
11. Navicat 访问时报错:(mysql8 特有)

alter user root identified with mysql_native_password by mypasswd!@#';

退出移动版