rpm 删除 mariadb rpm卸载mariadb_mysql

1、将下载的包上传至服务端。

2、执行命令:rpm -qa |grep -i mysql 查看是否已安装过mysql

3、执行命令:rpm -qa |grep -i mariadb 查看是否有系统自带的mariadb,存在最好卸载掉避免冲突。

4、卸载mariadb软件包,执行命令:rpm -e mariadb-libs-5.5.60-1.el7_5.x86_64

如出现错误提示:

rpm 删除 mariadb rpm卸载mariadb_rpm 删除 mariadb_02

这是存在依赖性关系导致,重新执行命令:yum remove mariadb-libs-5.5.60-1.el7_5.x86_64 来卸载。(yum remove + 包名 会检查依赖关系并一起移除)。

rpm 删除 mariadb rpm卸载mariadb_初始化_03

输入y 回车

rpm 删除 mariadb rpm卸载mariadb_数据库_04

再次检测一次是否卸载完成

rpm 删除 mariadb rpm卸载mariadb_mysql_05

mariadb卸载完成。

5、解压rpm文件压缩包,执行命令: tar -zxvf mysql-5.7.21-1.el7.x86_64.rpm-bundle.tar

如出现如下错误:

rpm 删除 mariadb rpm卸载mariadb_数据库_06

重新使用命令: tar -vxf mysql-5.7.21-1.el7.x86_64.rpm-bundle.tar 解压。

rpm 删除 mariadb rpm卸载mariadb_初始化_07

下面就是解压出来的文件:

rpm 删除 mariadb rpm卸载mariadb_mysql_08

一般只安装其中四个包:

rpm 删除 mariadb rpm卸载mariadb_初始化_09

6、依次执行四个安装命令:

1.rpm -ivh mysql-community-common-5.7.21-1.el7.x86_64.rpm

rpm 删除 mariadb rpm卸载mariadb_rpm 删除 mariadb_10

2.rpm -ivh mysql-community-libs-5.7.21-1.el7.x86_64.rpm

rpm 删除 mariadb rpm卸载mariadb_初始化_11

3.rpm -ivh mysql-community-client-5.7.21-1.el7.x86_64.rpm

rpm 删除 mariadb rpm卸载mariadb_配置文件_12

4.rpm -ivh mysql-community-server-5.7.21-1.el7.x86_64.rpm

如出现如下错误:

rpm 删除 mariadb rpm卸载mariadb_mysql_13

表示缺少libaio包,安装一下即可。

执行命令:yum search libaio  检索相关信息。

rpm 删除 mariadb rpm卸载mariadb_初始化_14

执行安装命令: yum install libaio-devel.x86_64 -y 进行安装。

执行命令:rpm -aq libaio 查看是否安装。

rpm 删除 mariadb rpm卸载mariadb_rpm 删除 mariadb_15

安装libaio成功。

重新执行:rpm -ivh mysql-community-server-5.7.21-1.el7.x86_64.rpm 完成刚才安装失败的server包。

rpm 删除 mariadb rpm卸载mariadb_数据库_16

OK,四个包安装完成。

7、数据库初始化:

(为了保证数据库目录为与文件的所有者为 mysql 登陆用户,如果你是以 root 身份运行 mysql 服务,需要执行初始化命令:mysqld --initialize --user=mysql ,如果是以 mysql 身份运行,则可以去掉 --user 选项。)

这里我们执行命令:mysqld --initialize --user=mysql 即可。

rpm 删除 mariadb rpm卸载mariadb_mysql_17

8、执行命令查看日志里面的临时密码:cat /var/log/mysqld.log 

rpm 删除 mariadb rpm卸载mariadb_数据库_18

复制记住临时密码。

9、启动mysql服务:

执行命令:systemctl start mysqld.service

执行命令:service mysqld status 查看启动状态

rpm 删除 mariadb rpm卸载mariadb_数据库_19

启动成功。

10、登录root账号,执行命令:mysql -uroot -p

rpm 删除 mariadb rpm卸载mariadb_配置文件_20

输入刚才的临时密码,回车。

rpm 删除 mariadb rpm卸载mariadb_初始化_21

OK,登录成功。

11、登陆后需要立即修改root账号密码:

执行命令:alter user 'root'@'localhost' identified by '新密码';

否则会报错如下:

rpm 删除 mariadb rpm卸载mariadb_初始化_22

12、修改完密码之后,可以查看mysql用户

依次执行:

use mysql;

select user, host from user;

rpm 删除 mariadb rpm卸载mariadb_初始化_23

此时root账号应该只能本机登录,一般需要改成外网远程连接。

13、继续执行命令:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '新密码' WITH GRANT OPTION;

flush privileges; 刷新权限

再次查看:

rpm 删除 mariadb rpm卸载mariadb_配置文件_24

14、重启mysql服务:service mysqld restart

现在即可远程登录(注意:如防火墙打开了,需要开启3306端口,未开防火墙不管)。

(另外,各家云服务器需要去平台开通端口)。

 

【提示:本方案安装路径全为默认路径】

 

附:更改data路径及binlog配置(在执行mysqld --initialize --user=mysql之前):

eg:

1、创建文件夹:mkdir /data/datadir/mysql

2、创建文件夹: mkdir /data/datadir/binlog2sql

3、执行 chown -R mysql:mysql /data/datadir/binlog2sql 

4、执行 chown -R mysql:mysql /data/datadir/mysql

5、执行:vi /etc/my.cnf

6、将配置文件改成(仅供参考):

[client]
 port=3306
 default-character-set=utf8
 socket=/data/datadir/mysql/mysql.sock[mysqld]
 port=3306
 character-set-server=utf8
 datadir=/data/datadir/mysql
 socket= /data/datadir/mysql/mysql.sock
 connect_timeout=60
 net_read_timeout=600
 net_write_timeout=180
 wait_timeout=86400
 interactive_timeout=86400
 max_allowed_packet=512M
 lower_case_table_names=1
 log-bin-trust-function-creators=1
 server_id=1
 log-bin=/data/datadir/binlog2sql/mysql-bin
 binlog-format=ROW
 symbolic-links=0
 log-error=/var/log/mysqld.log
 pid-file=/var/run/mysqld/mysqld.pid[mysql]
 socket=/data/datadir/mysql/mysql.sock

 

5、执行初始化操作(即执行mysqld --initialize --user=mysql),接下来按上面正常步骤继续执行。

rpm安装默认目录:
数据文件目录:/var/lib/mysql/
配置文件模板:/usr/share/mysql(mysql.server命令及配置文件)
mysql客户端工具目录:/usr/bin(mysqladmin mysqldump等命令)

启动脚本:/etc/rc.d/init.d/(启动脚本文件mysql的目录)
日志目录:/var/log/
pid,sock文件目录:/tmp/

............