yum方式安装及配置最新的mysql5.7
Posted mushou
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了yum方式安装及配置最新的mysql5.7相关的知识,希望对你有一定的参考价值。
1.删除旧版本的mysql
rpm -qa|grep -i mysql
用命令yum -y remove mysql
2.下载新版安装源
下载mysql的repo源 这个安装的mysql5.7.20
# cd /usr/local/src/
wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm
# rpm -ivh mysql57-community-release-el7-8.noarch.rpm
# yum -y install mysql-server
yum --installroot=/usr/local/mysql --releasever=/ -y install mysql-server
3.安装后的配置
默认配置文件路径:
配置文件:/etc/my.cnf
日志文件:/var/log/var/log/mysqld.log
服务启动脚本:/usr/lib/systemd/system/mysqld.service
socket文件:/var/run/mysqld/mysqld.pid
配置 my.cnf vim /etc/my.cnf
[mysql]
default-character-set=utf8 #支持中文字符
[mysqld]
#skip-grant-tables #跳过授权表
server-id = 1
port = 3306 #端口
slow_query_log = 1 #慢查询开启
slow_query_log_file = slow.log #慢查询日志路径
long_query_time = 8 #慢查询日志最长时间
expire_logs_days = 5 #日志过期时间
log-bin=mysql-bin #二进制日志前缀
4. 启动mysql服务
service mysqld restart
mysql -uroot -p
登录不进去,在/etc/my.cnf文件中 skip-grant-tables
mysql -uroot
mysql> update mysql.user set authentication_string=password(‘123456‘) where user=‘root‘ ;
flush privileges;
显示密码Your password does not satisfy the current policy requirements
这个其实与validate_password_policy的值有关。
validate_password_policy有以下取值:
Policy | Tests Performed |
---|---|
0 or LOW |
Length |
1 or MEDIUM |
Length; numeric, lowercase/uppercase, and special characters |
2 or STRONG |
Length; numeric, lowercase/uppercase, and special characters; dictionary file |
默认是1,即MEDIUM,所以刚开始设置的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符。
有时候,只是为了自己测试,不想密码设置得那么复杂,譬如说,我只想设置root的密码为123456。
必须修改两个全局参数:
设置安全级别能解决这个问题
set global validate_password_policy=0;
select @@validate_password_length;
validate_password_length参数默认为8,它有最小值的限制,最小值为:
validate_password_number_count
+ validate_password_special_char_count
+ (2 * validate_password_mixed_case_count)
其中,validate_password_number_count指定了密码中数据的长度,validate_password_special_char_count指定了密码中特殊字符的长度,validate_password_mixed_case_count指定了密码中大小字母的长度。
这些参数,默认值均为1,所以validate_password_length最小值为4,如果你显性指定validate_password_length的值小于4,尽管不会报错,但validate_password_length的值将设为4。如下所示:
当然,前提是validate_password插件必须已经安装,MySQL5.7是默认安装的。
那么如何验证validate_password插件是否安装呢?可通过查看以下参数,如果没有安装,则输出将为空。
SHOW VARIABLES LIKE ‘validate_password%‘;
没有装则显示为空
set global validate_password_length=4;
问题解决。
log-error=/var/log/mysqld.log #错误日志路径
pid-file=/var/run/mysqld/mysqld.pid #pid文件路径
datadir=/var/lib/mysql #数据目录
socket=/var/lib/mysql/mysql.sock #sock文件存放路径
4. 启动mysql服务
service mysqld restart
以上是关于yum方式安装及配置最新的mysql5.7的主要内容,如果未能解决你的问题,请参考以下文章
debian系统安装最新lnmp编译最新php7.1.2及nginx1.10.3及mysql5.7及5.6