当前位置:   article > 正文

Linux 安装、配置、卸载 MySQL_ymlbn

ymlbn

前言

 

1、软件版本

 

软件配置版本信息
LinuxCentOS release 7.8.2003 (Core)
MySQL5.7.30

 

2、安装方式

 
CentOS 安装 MySQL 的方式主要有两种:

  • yum 安装(在线安装)
    • 优点:方便快捷,可以自动解决软件包的依赖关系。
    • 缺点:需要联网,无法人为干预,不能自定义安装。
  • rpm 安装(离线安装)
    • 优点:无需联网,可以自行选择需要的包进行安装。
    • 缺点:无法解决软件包的依赖关系,需要手动操作。

yum 与 rpm 两种安装方式各有优劣,实际部署中可根据情况进行选择,就安装结果而言都是相同的。
 

一、安装准备

 
无论采用哪种方式安装 mysql,必须先检查系统中是否留有老版本或其他冲突版本,有的话必须干掉,如果没有可以跳过该步骤。
 

1、卸载旧版本 MySQL

 
查看 mysql 安装信息

rpm -qa | grep mysql
  • 1

查看 mysql 安装信息
查看 mysql 状态

service mysqld status
  • 1

停止 mysql 服务

service mysqld stop
  • 1

rpm 卸载 mysql 相关组件
由于依赖关系,需要按照顺序卸载,否则会报错
rpm 卸载顺序为:server >> client >> libs >> common

rpm -ev mysql-community-server-5.6.48-1.el7.x86_64
rpm -ev mysql-community-client-5.6.48-1.el7.x86_64
rpm -ev mysql-community-libs-5.6.48-1.el7.x86_64
rpm -ev mysql-community-common-5.6.48-1.el7.x86_64
  • 1
  • 2
  • 3
  • 4

这里也可以使用 yum 方式卸载
yum -y remove 一键卸载,可以自动解决依赖关系,更加方便
但也因为 yum remove 会将所有相关的依赖包都一并删除,所以该命令要慎用

yum -y remove mysql
  • 1

卸载完成后,查找 mysql 相关程序和文件

whereis mysql
  • 1

查找 mysql 相关程序

find / -name mysql
  • 1

查找 mysql 相关文件
删除 mysql 相关程序和文件

rm -rf /var/lib/mysql
rm -rf /usr/bin/mysql
rm -rf /usr/lib64/mysql
rm -rf /usr/share/mysql
rm -rf /usr/share/man/man1/mysql.1.gz
  • 1
  • 2
  • 3
  • 4
  • 5

删除 mysql 配置文件 /etc/my.cnf

rm -rf /etc/my.cnf
  • 1

最后,再次查找 mysql 相关信息

rpm -qa | grep mysql
whereis mysql
find / -name mysql
  • 1
  • 2
  • 3

无结果,说明 mysql 已经彻底卸载和删除~
 

2、CentOS 7 卸载 MariaDB

 
在 CentOS 7 下,默认安装的数据库为 MariaDB(实际上是 MySQL 的一个分支),如果要安装 MySQL 需要先将其卸载,毕竟一山不能容二虎。。。

查看 mariadb 安装信息

rpm -qa | grep mariadb
  • 1

查看 mariadb 安装信息
强制卸载 mariadb(–nodeps 忽略依赖关系强制执行)

rpm -e mariadb-libs-5.5.65-1.el7.x86_64 --nodeps
  • 1

卸载完成,万事俱备,接下来就可以安装 mysql 船新版本啦~
 

二、YUM 安装

 
YUM,全称为 Yellow dog Updater,Modified,是一个在 Fedora 和 RedHat 以及 SUSE、CentOS 中的 Shell 前端软件包管理器。基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次性安装所有依赖的软件包,无须繁琐地一次次下载、安装。
 

1、安装 wget 工具

 

yum -y install wget
  • 1

 

2、下载 MySQL 源

 

wget http://repo.mysql.com/mysql57-community-release-el7-10.noarch.rpm
  • 1

 

3、安装 MySQL 源

 

rpm -ivh mysql57-community-release-el7-10.noarch.rpm
  • 1

 

4、Yum 安装 MySQL

 

yum -y install mysql-server
  • 1

安装过程中 yum 会自动检测依赖包下载安装,等待安装完成即可,网速慢可能要等很久(yum 安装的缺点)。
 

三、RPM 安装

 
RPM 是 Red-Hat Package Manager(RPM 软件包管理器)的缩写,原本是 Red Hat Linux 发行版专门用来管理 Linux 各项套件的程序,由于它遵循 GPL 规则且功能强大方便,因而广受欢迎。逐渐受到其他发行版的采用。RPM 套件管理方式的出现,让 Linux 易于安装,升级,间接提升了 Linux 的适用度。
 

1、官网下载安装包

 
下载地址:https://dev.mysql.com/downloads/mysql/
下载地址
选择对应的 linux 系统和 x86 版本进行下载
Bundle
使用 wget 下载或者将下载好的文件直接上传到系统中

wget https://dev.mysql.com//Downloads/MySQL-5.7/mysql-5.7.30-1.el7.x86_64.rpm-bundle.tar
  • 1

也可以细化下载,只下载需要的 mysql 组件,有 4 个:server、client、common、libs
下载组件
 

2、RPM 安装 MySQL

 
解压 mysql-5.7.30-1.el7.x86_64.rpm-bundle.tar

tar -xvf mysql-5.7.30-1.el7.x86_64.rpm-bundle.tar
  • 1

按照依赖关系依次安装 rpm 包
rpm 安装顺序为:common >> libs >> client >> server(与 rpm 卸载顺序相反)

rpm -ivh mysql-community-common-5.7.30-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.30-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.30-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.30-1.el7.x86_64.rpm
  • 1
  • 2
  • 3
  • 4

在安装 server 组件时可能会报依赖错误,需要根据错误提示下载安装对应的依赖包(rpm 安装的缺点)
Failed dependencied

yum -y install net-tools
yum -y install perl
  • 1
  • 2

安装完成
安装完成
 

四、配置 MySQL

 

1、启动 MySQL 并设置开机自启

 
启动 mysql 服务

systemctl start mysqld
  • 1

设置 mysql 开启自启

systemctl enable mysqld
  • 1

查看 mysql 运行状态

systemctl status mysqld
  • 1

查看 mysql 运行状态
 

2、登录 MySQL 并修改 root 密码

 
mysql 5.7.4 之前的版本中默认是没有初始密码的,登录时直接回车就可以进入数据库。而之后的版本对密码策略等安全相关操作进行了一些升级,在安装过程中,mysql 会在日志中生成一个临时登录密码。

获取临时密码

grep 'temporary password' /var/log/mysqld.log
  • 1

临时密码
可以看到 W)OcyMlBn3sl 即为随机生成的临时登录密码。使用该密码登录 mysql,输入命令:

mysql -uroot -p'W)OcyMlBn3sl'
  • 1

登录成功,啦啦啦~
登录成功
修改登录密码

mysql> set password for 'root'@'localhost'=password('你自己的密码');
  • 1

mysql> alter user root@localhost identified by '你自己的密码';
  • 1

若你将密码设置得过短或者过于简单,mysql 会报错:
修改密码失败
这是因为 mysql 5.7 安装了密码安全检查插件(validate_password)
默认密码检查策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于 8 位。
如果不满足要求就会提示错误:ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

解决方案如下:

step 1:更改有效密码策略

mysql> set global validate_password_policy=0;
  • 1

此时,新密码长度大于等于 8 位才有效,否则报错。

step 2:更改有效密码长度

mysql> set global validate_password_length=1;
  • 1

validate_password_length 的有效值最低为 4,当设置的值小于 4 时,实际生效的值依然为 4。当设置的值超过 4 时,才为用户设定值。即密码长度最低为 4 位。

step 3:重新设定密码

mysql> set password for root@localhost=password('1234');
  • 1

修改密码成功
 

3、授予 root 用户远程访问权限

 
mysql 安装完成之后,root 账号只允许在本地登陆,如果想要远程访问,需要授予权限。

mysql> grant all privileges on *.* to 'root' @'%' identified by '1234';
  • 1

刷新权限,使设置生效。

mysql> flush privileges;
  • 1

 

4、修改 MySQL 默认编码为 UTF-8

 
查看 mysql 默认编码,可以看到有两个不是 utf8,这你能忍?

mysql> show variables like '%character%';
  • 1

查看 mysql 默认编码
修改配置文件 /etc/my.cnf,在 [mysqld] 下添加如下配置:

character-set-server=utf8
init_connect='set names utf8'
  • 1
  • 2

修改 mysql 默认编码为 utf-8
修改配置后需要重启服务

systemctl restart mysqld
  • 1

登录 mysql 再次查看编码,咳咳咳~
查看 mysql 修改编码
 

五、MySQL 相关整理

 

1、mysql 常用命令

 

功能命令
启动 mysql 服务systemctl start mysqld
关闭 mysql 服务systemctl stop mysqld
重启 mysql 服务systemctl restart mysqld
查看 mysql 状态systemctl status mysqld
登录 mysqlmysql -uroot -p

 

2、mysql 文件路径

 

mysql 文件文件路径
配置文件/etc/my.cnf
日志文件/var/log/mysqld.log
服务启动脚本/usr/lib/systemd/system/mysqld.service
socket/var/run/mysqld/mysqld.pid
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/537429
推荐阅读
相关标签
  

闽ICP备14008679号