MYSQL完全卸载、安装与账号创建、权限控制

一、卸载mysql

CentOS 卸载 MySQL

1. 查看安装情况

使用以下命令查看当前安装mysql情况,查找以前是否装有mysql

bash 复制代码
rpm -qa|grep -i mysql

这里显示我安装的 MySQL 服务有有:

2. 停止 mysql 服务、删除之前安装的 mysql

  • 删除命令:rpm -e --nodeps 包名
bash 复制代码
rpm -ev mysql-community-libs-5.7.22-1.el7.x86_64
rpm -ev mysql-community-common-5.7.22-1.el7.x86_64
rpm -ev mysql-community-client-5.7.22-1.el7.x86_64
rpm -ev mysql-community-server-5.7.22-1.el7.x86_64
  • 使用上面命令报依赖错误,使用下面命令
bash 复制代码
rpm -ev mysql-community-libs-5.7.22-1.el7.x86_64 --nodeps
rpm -ev mysql-community-common-5.7.22-1.el7.x86_64 --nodeps
rpm -ev mysql-community-client-5.7.22-1.el7.x86_64 --nodeps
rpm -ev mysql-community-server-5.7.22-1.el7.x86_64 --nodeps
  • 如果提示错误:error: %preun(xxxxxx) scriptlet failed, exit status 1,使用下面命令
bash 复制代码
rpm -e --noscripts mysql-community-libs-5.7.22-1.el7.x86_64
rpm -e --mysql-community-common-5.7.22-1.el7.x86_64
rpm -e --noscripts mysql-community-client-5.7.22-1.el7.x86_64
rpm -e --noscripts mysql-community-server-5.7.22-1.el7.x86_64

3.删除 MySQL 目录

查找之前老版本mysql的目录、并且删除老版本mysql的文件和库

  • 查找文件
bash 复制代码
find / -name mysql
  • 删除文件
bash 复制代码
rm -rf /var/lib/mysql
rm -rf /var/lib/mysql/mysql
rm -rf /usr/lib64/mysql


注意: 卸载后/etc/my.cnf不会删除,需要进行手工删除

  • 删除 my.cnf
bash 复制代码
rm -rf /etc/my.cnf
  • 再次查看是否安装 MySQL
bash 复制代码
rpm -qa|grep -i mysql
  • 重启你的 Linux 服务器(这一步也可以不做)
bash 复制代码
reboot

4. Linux 中常用 MySQL 命令

bash 复制代码
序号	命令	作用
1	netstat -tulpn	查看端口号
2	service mysqld status	查看 MySQL 状态
3	service mysqld start	启动 MySQL
4	两种方式:
service mysqld stop
mysqladmin -p -u root shutdown	关闭 MySQL
5	service mysqld restart	重启 MySQL
6	cat /etc/my.cnf	查看 MySQL 配置
7	rpm -qa	grep -i mysql

二、安装mysql

centos中安装mysql57

1.查看是否安装过mysql和Mariadb,否则卸载

bash 复制代码
rpm -qa|grep -i mysql
rpm -qa|grep mariadb
#使用下列命令卸载
rpm -e --nodeps [包名]

2.删除etc下的conf

bash 复制代码
rm -rf /etc/my.conf

3.找一个合适位置下载安装包并安装

bash 复制代码
wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm
rpm -ivh mysql57-community-release-el7-8.noarch.rpm 
yum -y install mysql-server

4.启动mysql服务

bash 复制代码
systemctl start mysqld 

5.获取mysql临时密码并进入mysql

bash 复制代码
grep 'temporary password' /var/log/mysqld.log
#有些路径为 /var/log/mysql/mysqld.log
mysql -uroot -p
[输入临时密码]

#有些获取不到临时密码,但会告诉不需要密码就可以进入
mysql -u root

6. 修改mysql密码

bash 复制代码
use mysql
ALTER USER 'root'@'localhost' IDENTIFIED BY '修改的密码'; 

7.修改任何地址都可以访问(如果没有需求就可不设置)

bash 复制代码
update user set Host='%' where User='root';
flush privileges;  #刷新权限

8. 如果数据库挂了就重新启动

bash 复制代码
service mysqld start	#启动mysql
service mysqld status	#查看mysql状态
service mysqld stop		#停止mysql

9.注意事项

注意数据库创建时,编码格式和数据库排序规则应该为

bash 复制代码
编码格式:utf8
排序规则:utf8_general_ci

三、新建账号和权限管控

https://www.php.cn/faq/544449.html

相关推荐
薛定谔的算法4 小时前
phoneGPT:构建专业领域的检索增强型智能问答系统
前端·数据库·后端
Databend5 小时前
Databend 亮相 RustChinaConf 2025,分享基于 Rust 构建商业化数仓平台的探索
数据库
得物技术6 小时前
破解gh-ost变更导致MySQL表膨胀之谜|得物技术
数据库·后端·mysql
Java水解6 小时前
【MySQL】从零开始学习MySQL:基础与安装指南
后端·mysql
Raymond运维10 小时前
MariaDB源码编译安装(二)
运维·数据库·mariadb
沢田纲吉10 小时前
🗄️ MySQL 表操作全面指南
数据库·后端·mysql
RestCloud1 天前
SQL Server到Hive:批处理ETL性能提升30%的实战经验
数据库·api
RestCloud1 天前
为什么说零代码 ETL 是未来趋势?
数据库·api
ClouGence1 天前
CloudCanal + Paimon + SelectDB 从 0 到 1 构建实时湖仓
数据库
Java水解1 天前
Mysql查看执行计划、explain关键字详解(超详细)
后端·mysql