CentOS7下安装MySQL
1.下载并安装MySQL官方的 Yum Repository
[root@localhost ~]# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
- 使用上面的命令就直接下载了安装用的Yum Repository,大概25KB的样子,然后就可以直接yum安装了
[root@localhost ~]# yum -y install mysql57-community-release-el7-10.noarch.rpm
- 之后就开始安装MySQL服务器。
[root@localhost ~]# yum -y install mysql-community-server
这步可能会花些时间,安装完成后就会覆盖掉之前的mariadb
2.MySQL数据库设置
- 首先启动MySQL
[root@localhost ~]# systemctl start mysqld.service
- 查看MySQL运行状态
[root@localhost ~]# systemctl status mysqld.service
- 此时MySQL已经开始正常运行,不过要想进入MySQL还得先找出此时root用户的密码,通过如下命令可以在日志文件中找出密码:
[root@localhost ~]# grep "password" /var/log/mysqld.log
- 如下命令进入数据库:
[root@localhost ~]# mysql -uroot -p
- 输入初始密码,此时不能做任何事情,因为MySQL默认必须修改密码之后才能操作数据库:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
错误: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'al' at line 1
alter user 'root'@'localhost' IDENTIFIED BY '123456'; 正确语法;
- 这里有个问题,新密码设置的时候如果设置的过于简单会报错
- 密码的长度是由validate_password_length决定的,而validate_password_length的计算公式是
validate_password_length = validate_password_number_count + validate_password_special_char_count + (2 * validate_password_mixed_case_count)
- 我的是已经修改过的,初始情况下第一个的值是ON,validate_password_length是8。可以通过如下命令修改:
首先需要设置密码的验证强度等级,设置 validate_password_policy 的全局参数为 LOW 即可,
输入设值语句 “ set global validate_password_policy=LOW; ” 进行设值,
当前密码长度为 8 ,如果不介意的话就不用修改了,按照通用的来讲,设置为 6 位的密码,设置 validate_password_length 的全局参数为 6 即可,
输入设值语句 “ set global validate_password_length=6; ” 进行设值,
输入修改语句 “ ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘123456’; ” 可以看到修改成功,表示密码策略修改成功了!!!
- 设置之后就是我上面查出来的那几个值了,此时密码就可以设置的很简单,例如1234之类的。到此数据库的密码设置就完成了。
但此时还有一个问题,就是因为安装了Yum Repository,以后每次yum操作都会自动更新,需要把这个卸载掉:
[root@localhost ~]# yum -y remove mysql57-community-release-el7-10.noarch
- 附议
如果在部署diango的时候,出现 mysqlclient==1.4.4 问题 可以安装
yum install mysql-devel
yum install python-devel
阿里云服务器上卸载MYSQL
1.查看mysql状态
systemctl status mysqld
2. 关闭mysql服务
systemctl stop mysqld
3.执行卸载命令
rpm -qa | grep mysql
4.卸载安装组件(rpm -ev)后面跟的是上面命令执行后的要卸载的组件
-
由于依赖关系,所以要按顺序卸载。
-
需要注意的是:安装的时候是带rpm后缀的,但是卸载时不带的。
rpm -e --nodeps mysql-community-server-5.7.19-1.el7.x86_64
rpm -ev mysql-community-server-5.7.19-1.el7.x86_64
rpm -ev mysql-community-client-5.7.19-1.el7.x86_64
rpm -ev mysql-community-libs-5.7.19-1.el7.x86_64
rpm -ev mysql-community-common-5.7.19-1.el7.x86_64
5.执行命令
whereis mysql
6.删除上面命令下所显示的路径下的文件
rm -rf 路径
7.查找mysql相关文件
find / -name mysql
8. 删除日志文件
rm -rf /var/log/mysqld.log
使用navica 连接阿里云数据库
- 登录阿里云配置安全组,开放3306 端口
显示无法连接mysql service, 修改下面 - 用户登录权限不足
解决:登录服务器修改权限
grant all privileges on *.* to '用户名'@'%' identified by '123456';
flush privileges;
解释:
root 为用户名 , 123456为密码 ,根据你的需求对应修改
flush privileges是授予权限后 进行刷新操作