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

相关推荐
马克Markorg2 小时前
常见的向量数据库和具有向量数据库能力的数据库
数据库
Coder_Boy_4 小时前
技术让开发更轻松的底层矛盾
java·大数据·数据库·人工智能·深度学习
helloworldandy4 小时前
使用Pandas进行数据分析:从数据清洗到可视化
jvm·数据库·python
数据知道6 小时前
PostgreSQL 故障排查:如何找出数据库中最耗时的 SQL 语句
数据库·sql·postgresql
qq_12498707536 小时前
基于SSM的动物保护系统的设计与实现(源码+论文+部署+安装)
java·数据库·spring boot·毕业设计·ssm·计算机毕业设计
枷锁—sha6 小时前
【SRC】SQL注入WAF 绕过应对策略(二)
网络·数据库·python·sql·安全·网络安全
Coder_Boy_6 小时前
基于SpringAI的在线考试系统-考试系统开发流程案例
java·数据库·人工智能·spring boot·后端
Gain_chance6 小时前
35-学习笔记尚硅谷数仓搭建-DWS层最近n日汇总表及历史至今汇总表建表语句
数据库·数据仓库·hive·笔记·学习
此生只爱蛋6 小时前
【Redis】主从复制
数据库·redis
马猴烧酒.7 小时前
【面试八股|JAVA多线程】JAVA多线程常考面试题详解
java·服务器·数据库