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

相关推荐
踏月的造梦星球38 分钟前
DMDPC 学习:架构、部署、运维与调优
运维·数据库·学习·架构
韩楚风1 小时前
【参天引擎】事务生命周期 / MVCC / Undo / ACID / 分布式事务 功能域整体解析
数据库·分布式·mysql·架构·cantian
renhongxia12 小时前
世界模型,是“空中楼阁”还是AGI的“最后一块拼图”?
运维·服务器·数据库·人工智能·算法·agi
程序员无隅2 小时前
Coding Agent 为什么压缩上下文后还能继续工作?上下文模块设计拆解
java·开发语言·数据库
愿做无知一猿2 小时前
Nacos连接MySQL异常?DataGrip竟成救星
数据库·mysql
G.O.G.O.G2 小时前
LeetCode SQL 从入门到精通(MySQL)06(上)
数据库·sql·mysql·leetcode
千桐科技2 小时前
qData 数据中台开源版从 MySQL 到 Doris完成一次数据同步
大数据·mysql·开源·doris·数据中台·qdata
研究员子楚3 小时前
GEO行业发展标准体系白皮书V2.0-第10卷 · 全球篇:跨国标准协同与全球品牌语义治理框架
数据库·人工智能·microsoft·架构·geo
Omics Pro4 小时前
深度学习多组学互作:组内+组间
数据库·人工智能·深度学习·mysql·搜索引擎·自然语言处理
2501_915106324 小时前
TraceEagle 代理抓包教程 本机和手机的 HTTPS 抓包方法
网络协议·计算机网络·网络安全·ios·adb·https·udp