mysql5.7比5.6多了一些新特性,安装下5.7。

0.mysql5.7新特性

更好的性能:对于多核 CPU 、固态硬盘、锁有着更好的优化
更好的 InnoDB 存储引擎
更为健壮的复制功能:复制带来了数据完全不丢失的方案,传统金融客户也可以选择使用MySQL 数据库。
注: mysql-5.6.3 已经支持了多线程的主从复制
新增 sys 库:以后这会是 DBA 访问最频繁的库

1.卸载mariadb

将mariaDB包和自带mysql包卸载干净,否则安装时出现错误,导致失败。
查询安装的MariaDB 或者mysql
[root@lhy ~]# rpm -qa|grep mariadb
mariadb-libs-5.5.60-1.el7_5.x86_64
卸载系统已安装的mysql或者MariaDB 依赖包:
[root@lhy ~]# rpm -e mariadb-libs-5.5.60-1.el7_5.x86_64 —nodeps

2 安装mysql5.7所需要的依赖

yum install libaio
yum install perl -y
yum install net-tools -y

3.下载rmp包

163镜像网站:http://mirrors.163.com/mysql/Downloads/

4个安装包:

mysql-community-client-5.7.34-1.el7.x86_64.rpm
mysql-community-common-5.7.34-1.el7.x86_64.rpm
mysql-community-libs-5.7.34-1.el7.x86_64.rpm
mysql-community-server-5.7.34-1.el7.x86_64.rpm
安装有先后顺序, 依赖关系依次common→libs→client→server

命令rpm -ivh {-file-name}进行安装操作。
注:ivh中, i-install安装;v-verbose进度条;h-hash哈希校验**
rpm -ivh mysql-community-common-5.7.34-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.34-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.34-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.34-1.el7.x86_64.rpm

生成的文件:

在 /etc/下生成 my.cnf 文件 和 my.cnf.d 文件夹
在/var/lib/下生产以下三个文件夹mysql、mysql-files、mysql-keyring
在/var/log/ 下生成 mysqld.log 文件
在/var/run/ 下生成 mysqld 目录

4.启动

systemctl start mysqld.service 启动mysql
systemctl status mysqld.service 查看mysql状态
systemctl stop mysqld.service 关闭mysql
systemctl restart mysqld.service 重启

  1. [root@lhy mysqld]# systemctl status mysqld.service
  2. mysqld.service - MySQL Server
  3. Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
  4. Active: active (running) since Sun 2021-07-04 13:29:29 CST; 20s ago
  5. Docs: man:mysqld(8)
  6. http://dev.mysql.com/doc/refman/en/using-systemd.html
  7. Process: 8831 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=0/SUCCESS)
  8. Process: 8779 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
  9. Main PID: 8834 (mysqld)
  10. CGroup: /system.slice/mysqld.service
  11. └─8834 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid
  12. Jul 04 13:29:25 lhy systemd[1]: Starting MySQL Server...
  13. Jul 04 13:29:29 lhy systemd[1]: Started MySQL Server.

获取root用户默认密码

grep ‘temporary password’ /var/log/mysqld.log

2021-07-04T05:29:27.087375Z 1 [Note] A temporary password is generated for root@localhost: MZj3#qep.!yd

登录

[root@lhy mysqld]# mysql -uroot -p
Enter password: 输入临时密码

修改密码:

mysql> set password for root@localhost=password(‘123456’);
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
报错,在5.6后,mysql内置密码增强机制,低强度密码会报错:,

解决方案

更改密码安全策略,

设置 validate_password_policy=0;
mysql> set global validate_password_policy=0;

修改有效密码长度:

mysql> set global validate_password_length=1;
不管设置 validate_password_length=1,还是2,3,4 ,‘有效密码长度’这个参数的实际值都是4。超过4后设置是多少实际就是多少。

再重设密码:

mysql> set password for root@localhost=password(‘123456’);

授予root用户远程访问权限:

mysql> grant all privileges on . to root@’%’ identified by ‘123456’;
刷新权限,使设置生效
mysql> flush privileges;

问题:

安装报错
[root@lhy ~]# rpm -ivh mysql-community-common-5.7.34-1.el7.x86_64.rpm
warning: mysql-community-common-5.7.34-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing… ################################# [100%]
Updating / installing…
1:mysql-community-common-5.7.34-1.e################################# [100%]