顺序:nginx->mysql->php
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
yum -y install mysql57-community-release-el7-11.noarch.rpm
yum -y install mysql-community-server
yum -y install mysql-community-devel
systemctl restart mysqld
mysqld --initialize
此时MySQL已经开始正常运行,不过要想进入MySQL还得先找出此时root用户的密码,通过如下命令可以在日志文件中找出密码:
grep "password" /var/log/mysqld.log
mysql -uroot -p
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
以上报错是说新设置的密码过于简单,解决方式:
//首先按照默认密码格式复杂度更改,在mysql下
ALTER USER 'root'@'localhost' IDENTIFIED BY '@Ssslpk99';
set global validate_password_policy=0;
set global validate_password_policy=LOW;
set global validate_password_length=1;
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
grant all privileges on *.* to 'root'@'%'identified by '123456' with grant option;
FLUSH PRIVILEGES;
grant all privileges on *.* to 'root'@'127.0.0.1'identified by '123456' with grant option;
FLUSH PRIVILEGES;
grant all privileges on *.* to 'root'@'147.103.135.202'identified by '123456' with grant option;
FLUSH PRIVILEGES;
1.编辑mysql配置文件
#编辑mysql配置文件
vim /etc/my.cnf
#在[mysqld]下添加 太大影响性能
max_connections=10000
2.编辑mysqld.service配置文件
#编辑/usr/lib/systemd/system/mysqld.service配置文件
vim /usr/lib/systemd/system/mysqld.service
#在尾部添加
LimitNOFILE=65535
LimitNPROC=65535
3.重启mysql服务,使配置生效
systemctl daemon-reload
systemctl restart mysqld.service
4.查询当前最大连接数,在mysql下
#查询最大连接数
show variables like "max_connections";
#当前使用连接数
show global status like 'Max_used_connections';
yum remove mysql57-community-release.noarch
mysql_secure_installation
mysql为5.7之前,则会默认启用ONLY_FULL_GROUP_BY SQL模式,MySQL将拒绝选择列表,HAVING条件或ORDER BY列表的查询引用在GROUP BY子句中既未命名的非集合列,也不在功能上依赖于它们。
select @@global.sql_mode
查询出来的值为
ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
去掉ONLY_FULL_GROUP_BY,重新设置值。
set @@global.sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
上面的设置是临时的,或者可以在/etc/my.cnf 的【mysqld】下添加
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION