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

相关推荐
Navicat中国6 分钟前
如何使用 Ollama 配置 AI 助手 | Navicat 教程
数据库·人工智能·ai·navicat·ollama
小猿姐5 小时前
实测对比:哪款开源 Kubernetes MySQL Operator 最值得用?(2026 深度评测)
数据库·mysql·云原生
倔强的石头_7 小时前
从 “存得下” 到 “算得快”:工业物联网需要新一代时序数据平台
数据库
TDengine (老段)8 小时前
TDengine IDMP 可视化 —— 分享
大数据·数据库·人工智能·时序数据库·tdengine·涛思数据·时序数据
GottdesKrieges8 小时前
OceanBase数据库备份配置
数据库·oceanbase
SPC的存折9 小时前
MySQL 8组复制完全指南
linux·运维·服务器·数据库·mysql
运维行者_9 小时前
OpManager MSP NetFlow Analyzer集成解决方案,应对多客户端网络流量监控挑战
大数据·运维·服务器·网络·数据库·自动化·运维开发
炸炸鱼.10 小时前
Python 操作 MySQL 数据库
android·数据库·python·adb
softshow102610 小时前
Etsy 把 1000 个 MySQL 分片迁进 Vitess
数据库·mysql
Ronaldinho Gaúch11 小时前
MySQL基础
数据库·mysql