linux版本Centos7.5,mysql版本选择5.7.22
本次介绍rpm方式安装
1. mysql官网
https://dev.mysql.com/
2. 选择“downloads”->"community"->"mysql community server"
3.选择版本
4. 选择对应位数和版本
5. 放到linux服务器
6. 解压
在/var/lib/下先创建两个文件夹 mysql ,mysql_rpm 。mysql用来做安装目录,mysql_rpm用来放解压后的rpm的相关文件。
mkdir {mysql,mysql_rpm}
先解压
[root@microService59 mysql_rpm]# tar -xvf /tmp/mysql-5.7.22-1.el7.x86_64.rpm-bundle.tar
mysql-community-libs-5.7.22-1.el7.x86_64.rpm
mysql-community-libs-compat-5.7.22-1.el7.x86_64.rpm
mysql-community-embedded-5.7.22-1.el7.x86_64.rpm
mysql-community-test-5.7.22-1.el7.x86_64.rpm
mysql-community-server-5.7.22-1.el7.x86_64.rpm
mysql-community-client-5.7.22-1.el7.x86_64.rpm
mysql-community-server-minimal-5.7.22-1.el7.x86_64.rpm
mysql-community-devel-5.7.22-1.el7.x86_64.rpm
mysql-community-common-5.7.22-1.el7.x86_64.rpm
mysql-community-minimal-debuginfo-5.7.22-1.el7.x86_64.rpm
mysql-community-embedded-devel-5.7.22-1.el7.x86_64.rpm
mysql-community-embedded-compat-5.7.22-1.el7.x86_64.rpm
解压完毕之后,切到/var/lib/mysql下,进行安装步骤
7.安装
分别运行下列命令进行安装,只需安装下面的几个rpm文件即可。其他的rpm文件根据自己实际情况进行安装。
rpm -ivh ../mysql_rpm/mysql-community-common-5.7.22-1.el7.x86_64.rpm
rpm -ivh ../mysql_rpm/mysql-community-libs-5.7.22-1.el7.x86_64.rpm
rpm -ivh ../mysql_rpm/mysql-community-client-5.7.22-1.el7.x86_64.rpm
rpm -ivh ../mysql_rpm/mysql-community-server-5.7.22-1.el7.x86_64.rpm
8. 依赖冲突解决(如果安装过程中没有遇见,请忽略)
执行 rpm -ivh mysql-community-libs-5.7.22-1.el6.x86_64.rpm 时,出现下面错误,
从提示中可以看出,需要卸载mariadb
运行 rpm -qa | grep mariadb 查找
运行 rpm -ev mariadb-libs-5.5.56-2.el7.x86_64 卸载,此时又抛出下面错误提示,
同样是依赖冲突,卸载即可
rpm -ev net-snmp-1:5.7.2-33.el7_5.2.x86_64
rpm -ev postfix-2.10.1-6.el7.x86_64
卸载完成之后,再次运行mysql的相关安装执行命令,如果没有明确提示有依赖冲突,从头按顺序mysql执行脚本运行即可。
注:如果有些依赖无法卸载可以强制卸载
rpm -ev 【包名】 --nodeps
例如
rpm -ev mysql-community-libs-5.7.14-1.el6.x86_64 --nodeps
或者直接安装
rpm -ivh【包名】 --nodeps --force
例如
rpm -ivh ../mysql_rpm/mysql-community-server-5.7.22-1.el6.x86_64.rpm --nodeps --force
--nodeps就是安装时不检查依赖关系。
--force就是强制安装
9. 依赖解决
运行 yum -y install net-tools,安装相关依赖。
再次运行rpm -ivh mysql-community-server-5.7.22-1.el7.x86_64.rpm 即可。
运行 yum -y install perl-JSON.noarch,安装相关依赖。
10. 启动mysql
# 查看mysql启动状态
service mysqld status
# 启动mysql
service mysqld start
# 停止mysql
service mysqld stop
# 重启mysql
service mysqld restart
11. 查看临时密码
grep password /var/log/mysqld.log
使用临时密码登陆
12. 设置密码
使用默认密码登录之后,必须修改密码。
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
设置密码
set password = password('123');
此时系统报错,不让修改,是因为5.7默认有密码强度策略限制
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
该情况下,因为首次登陆并不知道密码强度策略是什么样?最快速的做法就是,在原有的默认密码上修改下,先使用,例如我之前的默认密码是;ck+f*fD2R:s,我可以先改成;ck+f*fD2R:a.
mysql> set password = password (';ck+f*fD2R:a');
Query OK, 0 rows affected, 1 warning (0.00 sec)
到这步,初次登陆密码已经修改完毕,如果不想密码那么复杂,我们可以修改mysql的密码默认强度。
通过下面命令可以查看当前的密码强度策略
mysql> select @@validate_password_policy;
+----------------------------+
| @@validate_password_policy |
+----------------------------+
| MEDIUM |
+----------------------------+
1 row in set (0.00 sec)
mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+--------+
| Variable_name | Value |
+--------------------------------------+--------+
| validate_password_check_user_name | OFF |
| validate_password_dictionary_file | |
| validate_password_length | 8 |
| validate_password_mixed_case_count | 1 |
| validate_password_number_count | 1 |
| validate_password_policy | MEDIUM |
| validate_password_special_char_count | 1 |
+--------------------------------------+--------+
7 rows in set (0.00 sec)
通过下面的命令可以调整策略
mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.00 sec)
mysql> set global validate_password_mixed_case_count=0;
Query OK, 0 rows affected (0.00 sec)
mysql> set global validate_password_number_count=3;
Query OK, 0 rows affected (0.00 sec)
mysql> set global validate_password_special_char_count=0;
Query OK, 0 rows affected (0.00 sec)
mysql> set global validate_password_length=3;
Query OK, 0 rows affected (0.00 sec)
然后再设置密码
mysql> set password = password ('123456');
Query OK, 0 rows affected, 1 warning (0.00 sec)
到此处,密码设置讲完。
13. 设置远程连接
mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> grant all privileges on *.* to root@'%' identified by "${yourPassword}";
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
${yourPassword} 自己设置的密码。
---------------------------------------------------------------------------------------------------------
整个mysql的安装就到此结束了