MySQL 基础之部署 - YUM 方式部署

YUM 部署

8.0 修改密码的加密方式已经改变了

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your password'

1、安装 YUM 仓库文件

打开网址: https://dev.mysql.com/downloads/repo/yum/

西瓜甜出品

西瓜甜出品

或者右键后 点击 复制链接地址, 之后使用 rpm -ivh 进行安装

rpm -ivh https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm

3、 选择具体的版本

5.5 5.6 5.7 8.0

// 安装 YUM 管理工具包,此包提供了 yum-config-manager 命令工具
yum install yum-utils

// 禁用 8.0
yum-config-manager --disable mysql80-community

// 启用 5.7
yum-config-manager --enable mysql57-community

确认启用的 MySQL 仓库

yum repolist enabled | grep mysql
西瓜甜出品

4、 开始安装 MySQL

yum install -y  mysql-community-server

5、设置默认字符编码

/etc/my.cnf 文件中设置

[mysqld]
# 服务器端的字符集
character-set-server = utf8

# 服务器端的排序规则
collation-server = utf8_unicode_ci

以后只要是创建数据库就会使用这里默认的字符编码了

6、 管理 MySQL 服务

// 启动
systemctl start mysqld.service

// 查看状态
systemctl status mysqld.service

// 开机自启动
systemctl enable mysqld

// 查看监听端口,默认 3306
ss -natl |grep 3306

7、 初始化 Mysql

MySQL服务器初始化(从MySQL 5.7开始):

在 MySQL 服务器初始启动时,如果服务器的数据目录为空,则会发生以下情况:

  • MySQL 服务器已初始化。

  • 在数据目录中生成SSL证书和密钥文件。

  • 安装并启用该 validate_password 插件。

  • 将创建一个超级用户 帐户'root'@'localhost'。并会设置超级用户的密码,将其存储在错误日志文件中。要显示它,请使用以下命令:

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

密码如图中红框中

西瓜甜出品

修改初始密码

数据库初始化成功后,必须修改 root 的初始密码

方式一:

登录:

 shell> mysql -uroot -p'找到的初始密码' 

第一次登录到数据库后,必须修改密码。

修改密码:

 mysql>alter user   root@localhost   identified  by  'QFedu123!';

注意:
MySQL的 validate_password 插件默认安装。这将要求密码包含至少一个大写字母,一个小写字母,一个数字和一个特殊字符,并且密码总长度至少为8个字符。

8、关于密码

取消密码复杂度

编辑 my.cnf配置文件, 在 [mysqld]配置块儿中添加如下内容

plugin-load=validate_password.so 
validate-password=OFF

保存退出后,重启服务, 修改密码。

不使用密码

适用于忘记密码的场景
修改 my.cnf 文件,添加如下内容,之后重启服务

[mysqld]
skip-grant-tables=true
忘记密码
// 停止 mysql 服务
systemctl stop mysqld

// 启动免授权服务端
# 在 /etc/my.cnf 配置文件中添加如下配置项,并重启服务
skip-grant-tables=1

# 启动服务
systemctl   start   mysqld

# 在服务端本地执行 mysql, 通过本地连接数据库,bash 中输入如下命令
mysql   

# 修改用户的密码

mysql> update mysql.user set authentication_string=PASSWORD('123') where user='root' and host='localhost';

# 修改配置文件,去掉skip-grant-tables=1 或者注释此行
# skip-grant-tables=1

// 再次重启服务
shell> systemctl restart mysqld

查看密码表中的内容,在 MySQL 会话终端中输入如下命令
mysql> select * from mysql.user\G

你可能感兴趣的:(MySQL 基础之部署 - YUM 方式部署)