阿里云服务器CentOS7上安装MySql服务并开启远程连接
折腾一下午,踩坑那么多,我终于成功在centos7上面安装了mysql,现在将半个小时安装mysql的方法分享如下
所需环境:无,直接远程连接服务器
安装mysql前请确保使用root用户登录
[admin@iZ2zeg7004ksh25gsbhoepZ ~]$ sudo su root
1、更新服务器
[admin@iZ2zeg7004ksh25gsbhoepZ ~]$ yum -y update
更新完毕会看到Complete就说明这一步成功了
2、重启服务器,可以使用
reboot命令,也可以直接去控制台手动重启
3、下载Mysql安装包
[admin@iZ2zeg7004ksh25gsbhoepZ ~]$ rpm -ivh http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
或
[admin@iZ2zeg7004ksh25gsbhoepZ ~]$ rpm -ivh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
一个是7.8版本,一个是7.5版本,请自行选择
4、安装mysql
[admin@iZ2zeg7004ksh25gsbhoepZ ~]$ yum install -y mysql-server
执行命令后请耐心等待,大约需要下载200M左右的资源,下载完后会显示下面内容
Complete!
5、设置开机启动
[admin@iZ2zeg7004ksh25gsbhoepZ ~]$ systemctl enable mysqld.service
6、检查一下第五步是否成功
[admin@iZ2zeg7004ksh25gsbhoepZ ~]$ systemctl list-unit-files | grep mysqld
如果启动成功会显示
mysqld.service enabled
7、查看初始密码
[admin@iZ2zeg7004ksh25gsbhoepZ ~]$# grep ‘temporary password’ /var/log/mysqld.log
8、登录mysql
[admin@iZ2zeg7004ksh25gsbhoepZ ~]$# mysql -uroot -p
回车后输入密码,这个地方输入密码无回显输入密码自己检查小心点
9、修改当前root用户密码
mysql>SET PASSWORD = PASSWORD(‘此处为密码’);
当你执行过后可能会出现下面的错误
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
这就说明你的密码过于简单
两种解决办法:
第一:将密码改为既有大写字母又有小写字母还有数字再加个特殊字符
第二:修改mysql初始密码策略
mysql> SHOW VARIABLES LIKE ‘validate_password%’;
你可以看到一个表,显示密码强度为等级为中等
现在通过
mysql> set global validate_password_policy=LOW;
修改密码强度为low
set global validate_password_length=xxx;
还可以修改密码长度xxx为密码长度,换成对应的阿拉伯数字即可修改
然后你再执行
mysql>SET PASSWORD = PASSWORD(‘此处为密码’);
就可以随便设置一个自己能记住的密码
下面介绍一下mysql 密码策略相关参数;
1、validate_password_length 固定密码的总长度;
2、validate_password_dictionary_file 指定密码验证的文件路径;
3、validate_password_mixed_case_count 整个密码中至少要包含大/小写字母的总个数;
4、validate_password_number_count 整个密码中至少要包含阿拉伯数字的个数;
5、validate_password_policy 指定密码的强度验证等级,默认为 MEDIUM;
6、validate_password_special_char_count 整个密码中至少要包含特殊字符的个数关于 validate_password_policy 的取值:
0/LOW:只验证长度;
1/MEDIUM:验证长度、数字、大小写、特殊字符;
2/STRONG:验证长度、数字、大小写、特殊字符、字典文件;
第九步已经完成
10、开启远程登录,授权root远程登录
mysql>GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘123456’ WITH GRANT OPTION;
这样就设置了远程登录root用户,密码为123456,这个密码可以自己设置
11刷新mysql权限
mysql>flush privileges;
现在已经完成了所以操作了,你可以通过navicat进行远程连接你的数据库了
同时记得去你的控制台把3306端口对外开放,不然你还是不能远程连接成功
最后记得一定要打开3306端口哈,不要怪我没提醒你