Centos完全卸载Mysql及重新安装

Centos完全卸载Mysql及重新安装

1. 查看mysql安装了哪些东西
[root@localhost ~]# rpm -qa |grep -i mysql
mysql-community-common-5.7.20-1.el7.x86_64
mysql-community-client-5.7.20-1.el7.x86_64
mysql57-community-release-el7-11.noarch
mysql-community-libs-5.7.20-1.el7.x86_64
mysql-community-server-5.7.20-1.el7.x86_64
2. 开始卸载
[root@localhost ~]# yum remove mysql-community-common-5.7.20-1.el7.x86_64
[root@localhost ~]# yum remove mysql-community-client-5.7.20-1.el7.x86_64
[root@localhost ~]# yum remove mysql57-community-release-el7-11.noarch
[root@localhost ~]# yum remove mysql-community-libs-5.7.20-1.el7.x86_64
[root@localhost ~]# yum removemysql-community-server-5.7.20-1.el7.x86_64
3. 查看是否卸载完成

在这里插入图片描述

4. 查找mysql相关目录
[root@localhost ~]# find / -name mysql
/etc/selinux/targeted/active/modules/100/mysql
/usr/lib64/mysql
/usr/share/mysql

在这里插入图片描述

5. 删除相关目录
[root@localhost ~]# rm -rf /etc/selinux/targeted/active/modules/100/mysql
[root@localhost ~]# rm -rf /usr/lib64/mysql
[root@localhost ~]# rm -rf /usr/share/mysql
6. 删除mysqld的配置文件/etc/my.cnf
[root@localhost ~]# rm -rf /etc/my.cnf

在这里插入图片描述

7. 删除日志文件mysqld.log

注意: 如果不删除这个文件,会导致新安装的mysql无法生存新密码,导致无法登陆

[root@localhost ~]# rm -rf /var/log/mysqld.log
8. 重新安装mysql
# 推荐国内使用阿里源镜像速度很快 (使用官方链接下载速度很慢)
一. 设置阿里云的源
1. 下载wget
[root@localhost ~]# yum install wget -y

2. echo 备份当前的yum源
[root@localhost ~]# mv /etc/yum.repos.d /etc/yum.repos.d.backup4comex

3. echo 新建空的yum源设置目录
[root@localhost ~]# mkdir /etc/yum.repos.d

4. echo 下载阿里云的yum源配置(根据系统版本,修改CentOS-后面的数值)
[root@localhost ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

5. 重建缓存
[root@localhost ~]# yum clean all
[root@localhost ~]# yum makecache

二. 安装MySQL
1. 下载mysql的repo源
[root@localhost ~]# wget https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm

2. 安装mysql-community-release-el7-5.noarch.rpm包
[root@localhost ~]# sudo rpm -ivh mysql-community-release-el7-11.noarch.rpm
'''
	安装这个包后,会获得两个mysql的yum repo源
    /etc/yum.repos.d/mysql-community.repo
    /etc/yum.repos.d/mysql-community-source.repo
'''

3. 安装mysql
[root@localhost ~]# yum install mysql-server
[root@localhost ~]# yum install mysql-devel
[root@localhost ~]# yum install mysql

# 查看安装成功的mysql相关资源
[root@localhost ~]# rpm -qa | grep -i mysql

'''
根据提示安装就可以了,不过安装完成后没有密码,需要重置密码
如果此时提示关于 mariadb的错误,则是因为系统中装了mariadb我们需要卸载掉mariadb
查看系统是否安装mariadb
'''
[root@localhost ~]# rpm -qa | grep mariadb
# 如果显示有安装的信息,则卸载
[root@localhost ~]# rpm -ev 此处填写上一步里面的列表 --nodeps  
# 完成后再次执行 
[root@localhost ~]# yum install mysql-server

4. 服务开关操作(执行其中之一就可以)
[root@localhost ~]# service mysqld status     查看mysql当前的状态
[root@localhost ~]# systemctl status mysqld

[root@localhost ~]# service mysqld stop       停止mysql
[root@localhost ~]# systemctl stop mysqld

[root@localhost ~]# service mysqld restart    重启mysql
[root@localhost ~]# systemctl restart mysqld

[root@localhost ~]# service mysqld start      启动mysql
[root@localhost ~]# systemctl start mysqld

5. 设置MySQL开机启动
[root@localhost ~]# systemctl enable mysqld
 
6. 启动MySQL服务进程
[root@localhost ~]# systemctl start mysqld
或者
[root@localhost ~]# service mysqld start
9. 无法登录问题解决
1. 添加 skip-grant-tables
	a. 在/etc/my.cnf文件中添加 skip-grant-tables 保存退出
	b. 然后直接输入mysql,不需要带任何登录参数直接回车就可以登陆上数据库
	注意:skip-grant-tables放到了文件最后
		 skip-grant-tables的作用就是跳过了mysql的用户验证

2.重启mysql
[root@localhost ~]# service mysqld restart
# 重启之后我们直接输入mysql即可进入mysql数据库,因为我们已经跳过了mysql数据库的用户验证
[root@localhost ~]# mysql -uroot
# 进入数据库之后执行下面的命令
mysql> use mysql;
mysql> show tables;
mysql> select user,authentication_string from user;
mysql> update mysql.user set password=password('your password') where user='root';
mysql> flush privileges;
mysql> exit

3. 恢复/etc/my.cnf文件
	恢复/etc/my.cnf,将skip-grant-tables删除或者注释掉
	
4. 重启mysql,service mysqld restart
	到此为止我们就解决了mysql安装之后登录不知道密码的问题
10. 重置密码
# 重置密码问题
安装完mysql之后,登陆以后,不管运行任何命令,总是提示这个错误:
You must reset your password using ALTER USER statement before executing this statement

# 解决办法
mysql> SET PASSWORD = PASSWORD('your new password');
mysql> ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
mysql> flush privileges;

# 注意
	这里要注意的是your new password 必须包含数字,字母包含大小写,标点符号。不然是不能通过的
	完成以上三步退出再登,使用新设置的密码就行了,以上除了 your new password 需要修改成新密码外,其他原样输入即可
11. 解决远程客户端无法连接MySQL数据库
1. 创建新的安全组规则,对外开放3306端口访问授权

2. 在本机登入mysql后
	更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost”改称'%'
    
# 以权限用户root登录
mysql> mysql -uroot -p      

# 选择mysql库
mysql> use mysql;	        

# 查看mysql库中的user表的host值(即可进行连接访问的主机/IP名称)
mysql> select host,user from user;

# 修改host值(以通配符%的内容增加主机/IP地址),当然也可以直接增加IP地址
mysql> update user set host = '%' where user ='root';

# 刷新MySQL的系统权限相关表
mysql> flush privileges;

重新查看user表
mysql> select host,user from user;

3. 重起mysql服务即可完成
[root@localhost ~]# service mysqld restart
  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

I believe I can fly~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值