卸载MySQL数据库与MariaDB数据库

Linux系统彻底卸载MySQL数据库

1.首先查询系统是否安装了MySQL

1
rpm -qa | grep -i mysql

2.卸载并删除MySQL

1
rpm -e --nodeps perl-DBD-MySQL-4.023-6.el7.x86_64

在卸载服务是遇到了三个组件服务无法卸载问题
解决方法就是在 rpm -ev 加上–nodeps: –nodeps就是安装时不检查依赖关系
3.查看MySQL对应的文件夹

1
2
3
4
5
find / -name mysql
rm -rf /etc/selinux/targeted/active/modules/100/mysql
rm -rf /var/lib/mysql
rm -rf /var/lib/mysql/mysql
rm -rf /usr/share/mysql

4.最后验证MySQL是否删除完成

1
2
rpm -qa | grep -i mysql
find / -name mysql

Linux系统完全卸载MariaDB数据库

1.首先查询系统是否安装了MariaDB

1
rpm -qa | grep mariadb

2.卸载并删除MariaDB

1
2
3
yum remove mariadb  
# 有可能mariadb要某些依赖才能卸载,要么安装完依赖再卸载,或者如下,强制卸载
rpm -e mariadb-libs-5.5.68-1.el7.x86_64 --nodeps

3.删除配置文件

1
rm -f /etc/my.cnf

4.删除数据目录

1
rm -rf /var/lib/mysql/

5.最后验证MariaDB是否删除完成

1
2
rpm -qa | grep mariadb
find / -name mariadb

安装MySql数据库

1.使用系统的root账户

2.切换到 /use/local 目录下

1
cd /usr/local

3.下载mysql

1
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.21-linux-glibc2.12-x86_64.tar.xz

也可以直接在官方下载最新版本 官方下载 选择linux

4.解压mysql

1
tar xvJf mysql-8.0.21-linux-glibc2.12-x86_64.tar.xz

5.重命名文件夹

1
mv mysql-8.0.21-linux-glibc2.12-x86_64 mysql-8.0

6.创建data文件夹 存储文件

1
2
cd ./mysql-8.0
mkdir data

7.创建用户组以及用户和密码

1
2
groupadd mysql
useradd -g mysql mysql

8.授权刚刚新建的用户

1
2
chown -R mysql.mysql /usr/local/mysql-8.0
chmod 750 /usr/local/mysql-8.0/data -R

9.配置环境,编辑/etc/profile文件

1
2
vim /etc/profile
source /etc/profile

在最后一行加

1
export PATH=$PATH:/usr/local/mysql-8.0/bin:/usr/local/mysql-8.0/lib

10.编辑my.cnf文件

1
vim /etc/my.cnf

注释mysqld_safe 修改信息

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
[mysqld]
port=3306
max_connections=10000
socket=/var/lib/mysql/mysql.sock
basedir=/usr/local/mysql-8.0
datadir=/usr/local/mysql-8.0/data
character-set-server=utf8mb4
default_authentication_plugin=mysql_native_password
general_log=off
general_log_file=/usr/local/mysql-8.0/data/mysql.log
# Disabling symbolic-links is recommended to prevent assorted security risks
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd

# [mysqld_safe]
# log-error=/usr/local/mysql-8.0/data/mysql.log
# pid-file=/usr/local/mysql-8.0/data/mysql.pid

#
# include all files from the config directory
[client]
port=3306
socket=/var/lib/mysql/mysql.sock

11.切换到/usr/local/mysql-8.0/bin目录下
初始化基础信息,得到数据库的初始密码(在/usr/local/mysql-8.0/bin目录下执行)

1
2
cd ./bin/
./mysqld --user=mysql --basedir=/usr/local/mysql-8.0 --datadir=/usr/local/mysql-8.0/data/ --initialize

在这里插入图片描述
12.添加mysqld服务到系统 在/usr/local/mysql/mysql-8.0目录下执行

1
2
3
cd ..
cp -a ./support-files/mysql.server /etc/init.d/mysql
cp -a ./support-files/mysql.server /etc/init.d/mysqld

13.赋予权限 以及添加服务

1
2
3
4
5
chown 777 /etc/my.cnf
chmod +x /etc/init.d/mysql
chmod +x /etc/init.d/mysqld
chkconfig --add mysql
chkconfig --list

14.检查一下/var/lib/mysql是否存在,否则进行创建 然后再赋予权限

1
2
mkdir /var/lib/mysql 
chown -R mysql:mysql /var/lib/mysql/

15.启动数据库,有SUCCESS字眼说明MySQL安装完成 查看启动状态

1
2
service mysql start
service mysql status

ps:
如果发现启动失败,可以先查看端口是否被占用,
使用lsof -i:端口号,查看是哪个PID(进程号)占用了该端口,然后使用kill PID(进程号)杀掉进程,重新执行service mysql start

16.将mysql命令添加到服务

1
ln -s /usr/local/mysql-8.0/bin/mysql /usr/bin

修改密码,并设置远程连接(为了可以在别的机器下面连接该mysql)

1.登录mysql 密码使用之前随机生成的密码

1
mysql -uroot -p

2.修改root密码 其中123456是新的密码自己设置

1
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

3.刷新 使密码生效

1
flush privileges;

4.选择mysql数据库 修改远程连接并生效

1
2
3
use mysql;
update user set host='%' where user='root';
flush privileges;

最后就可以使用root账号去登录mysql了。