1. 安装

教学视频:https://www.bilibili.com/video/BV1iq4y1u7vj

mysql官网地址:https://dev.mysql.com/downloads/mysql/ 找到适合版本的rpm文件下载
查看当前Linux系统版本信息:https://cloud.tencent.com/developer/article/1721171

  1. #查看当前是否有安装过MySQL
  2. [root@localhost ~]# rpm -qa | grep -i mysql
  3. #下载好的mysql服务daunt和客户端
  4. [root@localhost mysql]# ll
  5. 总用量 515936
  6. -rw-r--r--. 1 root root 55199948 1 22 19:12 mysql-community-client-8.0.28-1.el7.x86_64.rpm
  7. -rw-r--r--. 1 root root 473116268 1 22 19:12 mysql-community-server-8.0.28-1.el7.x86_64.rpm
  8. [root@localhost mysql]# rpm -ivh mysql-community-server-8.0.28-1.el7.x86_64.rpm
  9. 警告:mysql-community-server-8.0.28-1.el7.x86_64.rpm: V4 RSA/SHA256 Signature, 密钥 ID 3a79bd29: NOKEY
  10. 错误:依赖检测失败:
  11. mysql-community-client(x86-64) >= 8.0.11 mysql-community-server-8.0.28-1.el7.x86_64 需要
  12. mysql-community-common(x86-64) = 8.0.28-1.el7 mysql-community-server-8.0.28-1.el7.x86_64 需要
  13. mysql-community-icu-data-files = 8.0.28-1.el7 mysql-community-server-8.0.28-1.el7.x86_64 需要
  14. net-tools mysql-community-server-8.0.28-1.el7.x86_64 需要
  15. [root@localhost mysql]#

安装出错,需要的依赖并没有被安装
解决方案:下载bundle包,按顺序安装
https://blog.csdn.net/weixin_33881140/article/details/92619195(bundle包和其他包的区别)
https://zhuanlan.zhihu.com/p/143599392(mysql的bundle包安装)
https://blog.csdn.net/qq_35155680/article/details/115267192(安装问题)

安装完成后,查看MySQL安装时创建的MySQL用户和MySQL组

  1. [root@localhost mysql]# id mysql
  2. uid=27(mysql) gid=27(mysql) 组=27(mysql)
  3. [root@localhost mysql]# cat /etc/group | grep mysql
  4. mysql:x:27:
  5. [root@localhost mysql]# cat /etc/passwd | grep mysql
  6. mysql:x:27:27:MySQL Server:/var/lib/mysql:/bin/false
  7. [root@localhost mysql]#
  8. #启动MySQL
  9. [root@localhost mysql]# service mysqld start
  10. Redirecting to /bin/systemctl start mysqld.service
  11. [root@localhost mysql]# ps -ef | grep mysql
  12. mysql 1874 1 7 22:24 ? 00:00:01 /usr/sbin/mysqld
  13. root 1919 1332 0 22:24 pts/0 00:00:00 grep --color=auto mysql
  14. [root@localhost mysql]#
  15. #设置MySQL开机自启
  16. [root@localhost mysql]# systemctl enable mysqld

查看MySQL安装后的初始密码:
https://www.jianshu.com/p/f2da46fcee07(查看密码)
https://blog.csdn.net/ayychiguoguo/article/details/120370686(修改密码)
https://blog.csdn.net/muziljx/article/details/81541896(配置密码过期时间)

查看密码

  1. 找到mysql的配置文件my.cnf(/etc/my.cnf),查看日志文件所在路径
  2. 在日志中搜索关键字password,即可得到MySQL的初始密码

MySQL初始密码查看.png

  1. #修改密码校验
  2. mysql> SHOW VARIABLES LIKE 'validate_password%';
  3. +--------------------------------------+-------+
  4. | Variable_name | Value |
  5. +--------------------------------------+-------+
  6. | validate_password.check_user_name | ON |
  7. | validate_password.dictionary_file | |
  8. | validate_password.length | 8 |
  9. | validate_password.mixed_case_count | 1 |
  10. | validate_password.number_count | 1 |
  11. | validate_password.policy | LOW |
  12. | validate_password.special_char_count | 1 |
  13. +--------------------------------------+-------+
  14. 7 rows in set (0.01 sec)
  15. mysql> set global validate_password.length=1;
  16. Query OK, 0 rows affected (0.00 sec)
  17. mysql> set global validate_password.special_char_count=0;
  18. Query OK, 0 rows affected (0.00 sec)
  19. mysql> alter user 'root'@'localhost' identified by '123456';
  20. Query OK, 0 rows affected (0.00 sec)
  21. mysql>

2. 卸载

https://blog.csdn.net/Chihider/article/details/119842559

  1. # 1.检查MySQL是否正在运行
  2. [root@tang ~]# systemctl status mysqld
  3. mysqld.service - MySQL Server
  4. Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
  5. Active: active (running) since 2022-07-03 12:35:47 CST; 3min 21s ago
  6. Docs: man:mysqld(8)
  7. http://dev.mysql.com/doc/refman/en/using-systemd.html
  8. Process: 971 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
  9. Main PID: 1414 (mysqld)
  10. Status: "Server is operational"
  11. CGroup: /system.slice/mysqld.service
  12. └─1414 /usr/sbin/mysqld
  13. 7 03 12:35:40 tang systemd[1]: Starting MySQL Server...
  14. 7 03 12:35:47 tang systemd[1]: Started MySQL Server.
  15. #2. 停止MySQL服务
  16. [root@tang ~]# systemctl stop mysqld
  17. #3. 查看已经安装的MySQL包
  18. [root@tang ~]# rpm -qa | grep -i mysql
  19. mysql-community-client-plugins-8.0.28-1.el7.x86_64
  20. mysql-community-icu-data-files-8.0.28-1.el7.x86_64
  21. mysql-community-common-8.0.28-1.el7.x86_64
  22. mysql-community-libs-8.0.28-1.el7.x86_64
  23. mysql-community-client-8.0.28-1.el7.x86_64
  24. mysql-community-server-8.0.28-1.el7.x86_64
  25. mysql-community-libs-compat-8.0.28-1.el7.x86_64
  26. #4. 卸载并删除MySQL组件服务,--nodeps强制删除
  27. [root@tang ~]# rpm -ev --nodeps mysql-community-client-plugins-8.0.28-1.el7.x86_64
  28. 软件包准备中...
  29. mysql-community-client-plugins-8.0.28-1.el7.x86_64
  30. [root@tang ~]# rpm -ev --nodeps mysql-community-icu-data-files-8.0.28-1.el7.x86_64
  31. 软件包准备中...
  32. mysql-community-icu-data-files-8.0.28-1.el7.x86_64
  33. [root@tang ~]# rpm -ev --nodeps mysql-community-common-8.0.28-1.el7.x86_64
  34. 软件包准备中...
  35. mysql-community-common-8.0.28-1.el7.x86_64
  36. [root@tang ~]# rpm -ev --nodeps mysql-community-libs-8.0.28-1.el7.x86_64
  37. 软件包准备中...
  38. mysql-community-libs-8.0.28-1.el7.x86_64
  39. [root@tang ~]# rpm -ev --nodeps mysql-community-client-8.0.28-1.el7.x86_64
  40. 软件包准备中...
  41. mysql-community-client-8.0.28-1.el7.x86_64
  42. [root@tang ~]# rpm -ev --nodeps mysql-community-server-8.0.28-1.el7.x86_64
  43. 软件包准备中...
  44. mysql-community-server-8.0.28-1.el7.x86_64
  45. 警告:/etc/my.cnf 已另存为 /etc/my.cnf.rpmsave
  46. [root@tang ~]# rpm -ev --nodeps mysql-community-libs-compat-8.0.28-1.el7.x86_64
  47. 软件包准备中...
  48. mysql-community-libs-compat-8.0.28-1.el7.x86_64
  49. [root@tang ~]# rm /etc/my.cnf.rpmsave
  50. #5. 删除MySQL的目录文件和库
  51. [root@tang ~]# find / -name mysql
  52. /etc/selinux/targeted/active/modules/100/mysql
  53. /etc/selinux/targeted/tmp/modules/100/mysql
  54. /var/lib/mysql
  55. /var/lib/mysql/mysql
  56. /opt/package/mysql
  57. [root@tang ~]# rm -rf /etc/selinux/targeted/active/modules/100/mysql
  58. [root@tang ~]# rm -rf /etc/selinux/targeted/tmp/modules/100/mysql
  59. [root@tang ~]# rm -rf /var/lib/mysql
  60. [root@tang ~]# rm -rf /var/lib/mysql/mysql
  61. [root@tang ~]# rm -rf /opt/package/mysql
  62. #6. 删除MySQL用户及组
  63. [root@tang ~]# id mysql
  64. uid=27(mysql) gid=27(mysql) 组=27(mysql)
  65. [root@tang ~]# id mysql
  66. uid=27(mysql) gid=27(mysql) 组=27(mysql)
  67. [root@tang ~]# userdel mysql
  68. [root@tang ~]# groupdel mysql
  69. groupdel:“mysql”组不存在
  70. [root@tang ~]# cat /etc/passwd |grep mysql #验证用户是否被删除
  71. [root@tang ~]# cat /etc/group |grep mysql #验证用户组是否被删除
  72. #7. 检查是否还有MySQL
  73. [root@tang ~]# rpm -qa|grep -i mysql
  74. 无结果,说明MySQL已经卸载干净