赞
踩
目录
MySQL5.7是我们平时常用的Web数据库之一,Linux下安装和卸载可能会遇到不少坑,本文以Centos7下安装和卸载社区版MySQL5.7为例,详细记录了安装和卸载过程,方便大家参考,喜欢的可以点赞收藏,关注咱不迷路。
操作系统 | MySQL |
Centos7.9 | MySQL5.7社区版 |
注意:确保以root用户身份登录系统安装
yum update -y
rpm -qa | grep -i mysql
如果发现已经安装过,可参考第四部分的MySQL卸载
- # noarch表示该软件包不依赖特定Linux发行版
- wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
执行安装命令
rpm -ivh mysql57-community-release-el7-11.noarch.rpm
缺省会在/etc/yum.repos.d目录下生成两个配置文件
yum -y install mysql-community-server
默认会安装以下5个rpm包
注意:此处可能安装失败,提示Public key for mysql-community-common-5.7.43-1.el7.x86_64.rpm is not installed异常信息:
问题原因:MySQL秘钥过期导致
解决方法:导入新的秘钥信息
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
重新执行安装,出现如下信息表示安装成功
systemctl start mysqld
systemctl status mysqld
active (running)表示已经启动成功正在运行
mysql -V
执行结果
grep "password" /var/log/mysqld.log
执行结果
首次登录可使用如下两种方式设置root密码:
执行安全脚本,加固MySQL安全性,设置新的root密码
mysql_secure_installation
输入临时root密码
设置新的root密码,缺省安全策略是MEDIUM,要求至少包含8个字符,其中至少有一个大小写字母,一个特殊字符,一个数字,否则报 ... Failed! Error: Your password does not satisfy the current policy requirements异常。
输入要求的密码后可继续如下配置
- Estimated strength of the password: 100
- Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : y
- By default, a MySQL installation has an anonymous user,
- allowing anyone to log into MySQL without having to have
- a user account created for them. This is intended only for
- testing, and to make the installation go a bit smoother.
- You should remove them before moving into a production
- environment.
-
- # 移除匿名用户
- Remove anonymous users? (Press y|Y for Yes, any other key for No) : y
- Success.
-
-
- Normally, root should only be allowed to connect from
- 'localhost'. This ensures that someone cannot guess at
- the root password from the network.
-
- # 禁用远程root登录
- Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
- Success.
-
- By default, MySQL comes with a database named 'test' that
- anyone can access. This is also intended only for testing,
- and should be removed before moving into a production
- environment.
-
- # 删除测试数据库及权限
- Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
- - Dropping test database...
- Success.
-
- - Removing privileges on test database...
- Success.
-
- Reloading the privilege tables will ensure that all changes
- made so far will take effect immediately.
-
- # 重新加载授权表
- Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
- Success.
-
- All done!

执行登录
mysql -uroot -p
输入临时密码,进入MySQL
修改安全策略,使用简单密码登录
- # 查看当前安全策略
- show variables like 'validate_password%';
- # 最低安全策略(0->LOW ,1->MEDIUM, 2->STRONG)
- set global validate_password_policy=0;
- # 最小密码字符长度是4
- set global validate_password_length=4;
- # 设置本机root密码
- alter user 'root'@'localhost' identified by 'root';
设置成功后,输入quit命令使用修改后的密码重新登录,该方法只是临时生效重启MySQL后会失效,如果需要永久生效,需要修改/etc/my.conf重启MySQL服务。
systemctl enable mysqld
systemctl stop mysqld
登录本机,针对root用户赋权和设置密码
- # 授权,all表示所有ddl和dml操作权限,*.*表示针对所有数据库所有表,%表示本机和远程主机均能访问
- grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
- # 刷新权限
- flush privileges;
关闭本机防火墙
systemctl stop firewalld
通过远程主机执行,输入密码即可访问
mysql -h 192.168.5.11 -uroot -p
结果
卸载MySQL之前,首先需要停止MySQL服务
systemctl stop mysqld
yum -y remove mysql-server mysql-client mysql-common mysql-libs
结果如下表示卸载完毕
MySQL的数据文件和配置文件通常位于 /var/lib/mysql
和 /etc/my.cnf,执行删除命令
- rm -rf /var/lib/mysql
- rm -rf /etc/my.cnf
rpm -e mysql57-community-release-el7-11.noarch
- userdel mysql
- groupdel mysql
- rm -rf /var/log/mysql
- rm -rf /tmp/mysql*
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。