一、准备工作
1、mysql5.7-linux版本安装包
2、连接linux服务器,检测依赖
rpm -qa|grep libaio
rpm -qa|grep net-tools
mysql安装须要这两项依赖,须要先检测是否存在。
新服务器的话,很有可能缺乏这两项依赖。
可以通过yum形式安装,若是没有配置yum源,则须要提早下载安装包,通过rpm形式安装。
二、安装步骤
1、上传mysql安装包。
但是创建安装目录,mysql文件夹。
mkdir mysql
2、在mysql目录上面解压mysql的压缩包
tar xvf mysql-5.7.17.tar
3查找Mysql的MariaDB依赖
rpm -qa|grep mariadb
若是有,须要卸载。
rpm -e mariadb-libs-5.5.60-1.el7_5.x86_64 --nodeps
CentOS7默认安装MariaDb,必需要检测是否早已卸载。Rocky并没有默认安装这个所以无须要里面的操作
4依次安装mysql的rpm包(common,libs,client,server)
rpm -ivh mysql-community-common-5.7.17-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.17-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.20-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.20-1.el7.x86_64.rpm --force --nodeps
假如安装保错了linux安装mysql顾客端时提示libncurses.so.5()(64bit)isneeded
yum install libncurses*
既可以解决若果还不行的话就先忽视–nodeps后续去其他地方下载这两个
libtinfo.so.5
libtinfo.so.5
上传到/usr/lib64即可解决
mysql5.7的安装包解压后会有好多包,安装这四个即可。
一定要依次安装,次序不要乱。
5启动mysql
service mysqld start
6查找初始密码
vim /var/log/mysqld.log
或则
grep password /var/log/mysqld.log
7、连接mysql
mysql -u root -p
联接以后第一件事是更改密码。
ALTER USER 'root'@'localhost' IDENTIFIED BY Zhouwei520~!
注意:mysql的密码策略未能更改简单的密码,密码必需要包含大小写字母、数字和特殊字符。
8、修改mysql访问权限
首先步入mysql数据库。
use mysql;
之后修改用户的访问权限(%代表任何地址都可以访问)
update user set host='%' where user = 'root';
最后刷新权限缓存,立刻生效
flush privileges;
三、可能会碰到的问题:
1、Mysql更改密码。
mysql默认的密码策略,所更改的密码必需要包含大小写字母、数字和字符,过分简单密码难以设置。
密码策略报错问题:ERROR1819(HY000):Yourpassworddoesnotsatisfythecurrentpolicyrequirements
想要设置简单的密码,须要先更改密码策略。
查看密码策略:
showvariableslike'validate_password%';
更改策略:
①设置弱口令linux端口映射,更改完后只验证密码厚度。
setglobalvalidate_password_policy=0;
②修改密码宽度策略
setglobalvalidate_password_length=1
注意:validate_password_length参数默认为8,它有最小值的限制,最小值为4,假如你更改validate_password_length的值大于4linux操作系统安装,虽然不会报错,但validate_password_length的值将设为4。
2、Mysql更改联接数。
布署完成后,使用没多久,发觉应用出现难以联接mysql的问题linux操作系统安装,报出Toomanyconnections的异常信息。
首先联接到mysql:
mysql-uroot-p
查看联接数:
showprocesslist;
可以发觉有好多联接处于sleep状态,这种显然是暂时没有用的,所以可以kill掉,但这太麻烦也解决不了问题。
查看mysql默认的最大联接数:
showvariableslike"max_connections";
显示的结果应当是与前面查询到的联接数相同,就会出现toomanyconnections的情况。
可以通过更改mysql的默认联接数来解决这个问题。
setGLOBALmax_connections=10000
这条命令可以更改最大联接数,而且这只是临时更改,重启后会恢复原先的默认值。
永久更改须要更改配置文件:
vim/etc/f
编辑mysql的配置文件linux定时器,降低一行配置:
max_connections=10000
此后保存,退出,重启mysql:
systemctlrestartmysqld
时更改,重启后会恢复原先的默认值。
永久更改须要更改配置文件:
vim/etc/f
编辑mysql的配置文件,降低一行配置:
max_connections=10000
此后保存,退出,重启mysql:
systemctlrestartmysqld
重启完成后,问题解决。