如果你要在Linux系统中卸载(删除)MySQL 5.7.21数据库,那就按下面的方法做,下面的过程仅适合采用yum、rpm的Linux系统。
1、关闭mysql服务 [root@node1 ~]# systemctl status mysql [root@node1 ~]# systemctl stop mysql 提示:卸载用root用户。
2、查看 [root@node1 ~]# rpm -qa | grep -i mysql [root@node1 ~]# rpm -qa | grep -i mariadb
3、卸载全部查询出来的 [root@node1 ~]# yum -y remove mysql-* …….. [root@node1 ~]# yum -y remove MySQL-client-5.7.21-1.el7.x86_64 [root@node1 ~]# yum -y remove MySQL-server-5.7.21-1.el7.x86_64 [root@node1 ~]# rpm -e --nodeps mariadb-libs-5.5.41-2.el7_0.x86_64 [root@node1 ~]# rpm -e --nodeps mysql-libs-5.1.73-7.el6.x86_64 ………. 提示:卸载的时候尽量别用“*”号,使用全称。
4、删除分散mysql文件夹,删除查询出来的 [root@node1 ~]# whereis mysql [root@node1 ~]# rm -rf /usr/lib/mysql/ [root@node1 ~]# rm -rf /usr/share/mysql [root@node1 ~]# rm -rf /etc/my.cnf [root@node1 ~]# rm -rf /var/lib/mysql [root@node1 ~]# rm -rf /root/.mysql_sercret ……. 提示:rm -rf /var/lib/mysql(如果这个目录如果不删除,再重新安装之后,密码还是之前的密码,不会重新初始化。) [root@node1 ~]# find / -name mysql* [root@node1 ~]# rm -rf ****
5、检查一下是否删除干净 [root@node1 ~]# rpm -qa | grep -i mysql [root@node1 ~]# rpm -qa | grep -i mariadb [root@node1 ~]# whereis mysql [root@node1 ~]# find / -name mysql*
6、确定是不是真的卸载干净 (1).是看安装输出 如果没有卸载干净,安装server时输入只有两行 [root@node1 MySQL-5.7.21-rpm]# rpm -ivh MySQL-server-5.7.21-1.el7.x86_64.rpm Preparing... ################################# [100%] Updating / installing... MySQL-server-5.7.21-1.el7################################# [100%] 卸载干净了安装输入如下: [root@node1 MySQL-5.7.21-rpm]# rpm -ivh MySQL-server-5.7.21-1.el7.x86_64.rpm Preparing... ################################# [100%] Updating / installing...MySQL-server-5.7.21-1.el7################################# [100%] 2018-09-07 13:14:49 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). 2018-09-07 13:14:49 0 [Note] /usr/sbin/mysqld (mysqld 5.7.21) starting as process 5826 ... 2018-09-07 13:14:49 5826 [Note] InnoDB: Using atomics to ref count buffer pool pages 2018-09-07 13:14:49 5826 [Note] InnoDB: The InnoDB memory heap is disabled 2018-09-07 13:14:49 5826 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins 2018-09-07 13:14:49 5826 [Note] InnoDB: Memory barrier is not used 2018-09-07 13:14:49 5826 [Note] InnoDB: Compressed tables use zlib 1.2.3 2018-09-07 13:14:49 5826 [Note] InnoDB: Using Linux native AIO 2018-09-07 13:14:49 5826 [Note] InnoDB: Using CPU crc32 instructions 2018-09-07 13:14:49 5826 [Note] InnoDB: Initializing buffer pool, size = 128.0M 2018-09-07 13:14:49 5826 [Note] InnoDB: Completed initialization of buffer pool 2018-09-07 13:14:49 5826 [Note] InnoDB: The first specified data file ./ibdata1 did not exist: a new database to be created! 2018-09-07 13:14:49 5826 [Note] InnoDB: Setting file ./ibdata1 size to 12 MB 2018-09-07 13:14:49 5826 [Note] InnoDB: Database physically writes the file full: wait... 2018-09-07 13:14:49 5826 [Note] InnoDB: Setting log file ./ib_logfile101 size to 48 MB 2018-09-07 13:14:49 5826 [Note] InnoDB: Setting log file ./ib_logfile1 size to 48 MB 2018-09-07 13:14:50 5826 [Note] InnoDB: Renaming log file ./ib_logfile101 to ./ib_logfile0 2018-09-07 13:14:50 5826 [Warning] InnoDB: New log files created, LSN=45781 2018-09-07 13:14:50 5826 [Note] InnoDB: Doublewrite buffer not found: creating new 2018-09-07 13:14:50 5826 [Note] InnoDB: Doublewrite buffer created 2018-09-07 13:14:50 5826 [Note] InnoDB: 128 rollback segment(s) are active. 2018-09-07 13:14:50 5826 [Warning] InnoDB: Creating foreign key constraint system tables. 2018-09-07 13:14:50 5826 [Note] InnoDB: Foreign key constraint system tables created 2018-09-07 13:14:50 5826 [Note] InnoDB: Creating tablespace and datafile system tables. 2018-09-07 13:14:50 5826 [Note] InnoDB: Tablespace and datafile system tables created. 2018-09-07 13:14:50 5826 [Note] InnoDB: Waiting for purge to start 2018-09-07 13:14:50 5826 [Note] InnoDB: 5.7.21 started; log sequence number 0 A random root password has been set. You will find it in '/root/.mysql_secret'. 2018-09-07 13:14:50 5826 [Note] Binlog end 2018-09-07 13:14:50 5826 [Note] InnoDB: FTS optimize thread exiting. 2018-09-07 13:14:50 5826 [Note] InnoDB: Starting shutdown... 2018-09-07 13:14:52 5826 [Note] InnoDB: Shutdown completed; log sequence number 1625977 2018-09-07 13:14:52 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). 2018-09-07 13:14:52 0 [Note] /usr/sbin/mysqld (mysqld 5.7.21) starting as process 5848 ... 2018-09-07 13:14:52 5848 [Note] InnoDB: Using atomics to ref count buffer pool pages 2018-09-07 13:14:52 5848 [Note] InnoDB: The InnoDB memory heap is disabled 2018-09-07 13:14:52 5848 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins 2018-09-07 13:14:52 5848 [Note] InnoDB: Memory barrier is not used 2018-09-07 13:14:52 5848 [Note] InnoDB: Compressed tables use zlib 1.2.3 2018-09-07 13:14:52 5848 [Note] InnoDB: Using Linux native AIO 2018-09-07 13:14:52 5848 [Note] InnoDB: Using CPU crc32 instructions 2018-09-07 13:14:52 5848 [Note] InnoDB: Initializing buffer pool, size = 128.0M 2018-09-07 13:14:52 5848 [Note] InnoDB: Completed initialization of buffer pool 2018-09-07 13:14:52 5848 [Note] InnoDB: Highest supported file format is Barracuda. 2018-09-07 13:14:52 5848 [Note] InnoDB: 128 rollback segment(s) are active. 2018-09-07 13:14:52 5848 [Note] InnoDB: Waiting for purge to start 2018-09-07 13:14:52 5848 [Note] InnoDB: 5.7.21 started; log sequence number 1625977 2018-09-07 13:14:52 5848 [Note] Binlog end 2018-09-07 13:14:52 5848 [Note] InnoDB: FTS optimize thread exiting. 2018-09-07 13:14:52 5848 [Note] InnoDB: Starting shutdown... 2018-09-07 13:14:54 5848 [Note] InnoDB: Shutdown completed; log sequence number 1625987 A RANDOM PASSWORD HAS BEEN SET FOR THE MySQL root USER ! You will find that password in '/root/.mysql_secret'. You must change that password on your first connect, no other statement but 'SET PASSWORD' will be accepted. See the manual for the semantics of the 'password expired' flag. Also, the account for the anonymous user has been removed. In addition, you can run: /usr/bin/mysql_secure_installation which will also give you the option of removing the test database. This is strongly recommended for production servers. See the manual for more instructions. Please report any problems at http://bugs.mysql.com/ The latest information about MySQL is available on the web at http://www.mysql.com Support MySQL by buying support/licenses at http://shop.mysql.com New default config file was created as /usr/my.cnf and will be used by default by the server when you start it. You may edit this file to change server settings 最后一段中提示了重要信息。 (2).就是安装完成,启动服务之后使用命令:”mysql -uroot –p”输入你之前安装后设置的密码,看能不能登录,如果还可以登录,说明没有卸载干净。
附:安装MySQL 5.7.21的过程 1、添加mysql用户 [root@node1 ~]# id mysql [root@node1 ~]# userdel -r mysql [root@node1 ~]# useradd mysql [root@node1 ~]# passwd mysql 2、创建MySQL-5.7.21-rpm文件夹 [root@node1 software]# mkdir MySQL-5.7.21-rpm 3、解压mysql的rpm安装包 [root@node1 software]# tar -xvf MySQL-5.7.21-1.el7.x86_64.rpm-bundle.tar -C ./MySQL-5.7.21-rpm 4、设置执行权限 [root@node1 software]# chmod -R u+x MySQL-5.7.21-rpm 5、进入/opt/software/MySQL-5.7.21-rpm目录 [root@node1 software]# cd MySQL-5.7.21-rpm 6、安装mysql [root@node1 MySQL-5.7.21-rpm]# rpm -ivh mysql-community-common-c-1.el7.x86_64.rpm [root@node1 MySQL-5.7.21-rpm]# rpm -ivh mysql-community-libs-5.7.21-1.el7.x86_64.rpm [root@node1 MySQL-5.7.21-rpm]# rpm -ivh mysql-community-client-5.7.21-1.el7.x86_64.rpm [root@node1 MySQL-5.7.21-rpm]# rpm -ivh mysql-community-server-5.7.21-1.el7.x86_64.rpm [root@node1 MySQL-5.7.21-rpm]# rpm -ivh mysql-community-libs-compat-5.7.21-1.el7.x86_64.rpm 提示:rpm -ivh --prefix= /opt/moudle MySQL-client-5.7.21-1.el7.x86_64.rpm, rpm安装的时候可以通过--prefix来制定目录安装,此时不指定 7、修改配置文件 [root@node1 ~]# find / -name my-default.cnf [root@node1 ~]# cp /usr/share/mysql/my-default.cnf /etc/my.cnf [root@node1 ~]# vim /etc/my.cnf default-storage-engine=innodb collation-server=utf8_general_ci init-connect='SET NAMES utf8' character-set-server=utf8 #mysql5.7安全策略 validate_password_policy=0 validate_password_length=1 validate_password=off port=3306 提示:根据需要修改。 8、启动mysql服务端 [root@node1 MySQL-5.7.21-rpm]# systemctl start mysqld 9、查看mysql服务端状态 [root@node1 MySQL-5.7.21-rpm]# systemctl status mysqld 10、查看mysql的root用户的密码 [root@node1 MySQL-5.7.21-rpm]# grep 'temporary password' /var/log/mysqld.log 2018-09-7T01:29:11.385674Z 1 [Note] A temporary password is generated for root@localhost: 42mL&hX3G6+a 查看密码的其他方式。 (1).没有密码方式,直接登录(yum安装的时候) [root@node1 software]# mysql -uroot (2).log中查看密码(5.7rpm包安装的时候) [root@node1 software]# cat /root/.mysql_secret # The random password set for the root user at Fri Sep 7 13:14:49 2018 (local time): sg6AJwhm7BJble2H (3).mysql初始化会产生一个密码,tar二进制初始化安装的时候 [root@node1 ~]# /usr/bin/mysqld --initialize --datadir=/bigdata/data/mysqldata/mysql 提示:5.6和5.7的初始化方式不一样 mysql 5.6方式:/usr/bin/mysql_install_db 11、登录mysql客户端 [root@node1 software]# mysql -uroot -psg6AJwhm7BJble2H 12、修改密码 mysql>set password=password('000000'); mysql>flush privileges; 提示:mysql5.7密码安全策略提高,因此密码不能太过简单。 13、退出mysql mysql>exit; mysql>quit; 提示:两种方式都可以。
相关主题 |