CentOS7.9.2009安装Mysql8.4.0

一、安装Mysql数据库

1、安装依赖及Mysql数据库

# 安装yum-utils工具
[root@localhost ~] yum install yum-utils

# 添加MySQL官方的Yum仓库
[root@localhost home] rpm -Uvh https://dev.mysql.com/get/mysql84-community-release-el7-1.noarch.rpm 

# 添加Mysql官方的Yum仓库(提前下载好的rpm包,直接执行)
[root@localhost ~] rpm -ivh ./mysql84-community-release-el7-1.noarch.rpm 

# 安装Mysql数据库
[root@localhost home] yum install mysql-community-server

# 启动Mysql数据库
[root@localhost home] systemctl start mysqld

# 检查Mysql数据库启动状态
[root@localhost home] systemctl status mysqld

2、设置数据库密码

# 查看Mysql临时密码(下方1foO5_gwDktt为临时密码)
[root@localhost home] cat /var/log/mysqld.log | grep password
2024-06-09T04:37:47.967571Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: 1foO5_gwDktt

# 使用临时密码登陆数据库
[root@localhost home] mysql -uroot -p'1foO5_gwDktt' -hlocalhost

# 修改Mysql数据库密码(Mysql8不支持简易密码,此处将密码设置为“Mysql123_”)
mysql> alter user 'root'@'localhost' identified by 'Mysql123_';

# 退出mysql登陆
mysql> exit

# 使用新设置的密码登陆
[root@localhost home] mysql -uroot -pMysql123_

# 查看当前数据库版本
mysql> select version();
+-----------+
| version() |
+-----------+
| 8.4.0     |
+-----------+
1 row in set (0.00 sec)


# 设置密码的验证强度等级为LOW,使其只验证长度【开发不境,不想设复杂密码】
# 如需持久化到配置文件,使用set persist validate_password.policy=LOW;
mysql> set global validate_password.policy=LOW;
Query OK, 0 rows affected (0.00 sec)

# 设置密码长度为4位
# 如需持久化到配置文件,使用set persist validate_password.length=4;
mysql> set global validate_password.length=4;
Query OK, 0 rows affected (0.00 sec)

# 修改root账号密码为mysql
mysql> alter user 'root'@'localhost' identified by 'mysql';
Query OK, 0 rows affected (0.01 sec)

# 刷新权限
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)


3、创建远程访问账号

        注:Mysql8之后不支持授权时创建用户,需先创建用户再进行授权


# 创建远程访问账号root并设置密码为mysql
mysql> create user 'root'@'%' identified by 'mysql';
Query OK, 0 rows affected (0.01 sec)

# 权限远程访问账号
mysql> grant all privileges on *.* to 'root'@'%' with grant option;
Query OK, 0 rows affected (0.01 sec)

# 刷新账号授权
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

# 退出Mysql账号
mysql> exit
Bye

4、开放Mysql数据库3306端口

# 开放Mysql数据库3306端口
[root@localhost ~] firewall-cmd --zone=public --add-port=3306/tcp --permanent
success

# Reload防火墙端口
[root@localhost ~] firewall-cmd --reload
success

# 查看防火墙开放端口
[root@localhost ~] firewall-cmd --list-ports
3306/tcp

5、修改Mysql数据库配置

        注:默认Mysql配置文件在/etc/my.cnf,也可以使用echo $mysql_install_db_path查看路径

# Mysql默认日志文件保存30天,建议设置为7天(单位为秒)
mysql> set global binlog_expire_logs_seconds=60*60*24*7;
Query OK, 0 rows affected (0.00 sec)

# 查询Mysql参数设置的值
mysql> show variables like '%expire%';
+--------------------------------+--------+
| Variable_name                  | Value  |
+--------------------------------+--------+
| binlog_expire_logs_auto_purge  | ON     |
| binlog_expire_logs_seconds     | 604800 |
| disconnect_on_expired_password | ON     |
+--------------------------------+--------+
3 rows in set (0.00 sec)

# Mysql参数持久化到配置文件,防止重启丢失
mysql> set persist binlog_expire_logs_seconds=60*60*24*7;
Query OK, 0 rows affected (0.01 sec)

6、常用Mysql服务管理指令

# 启动Mysql数据库
[root@localhost ~] systemctl start mysqld

# 关闭Mysql数据库
[root@localhost ~] systemctl stop mysqld

# 重启Mysql数据库
[root@localhost ~] systemctl restart mysqld

# 查询Mysql运行状态
[root@localhost ~] systemctl status mysqld

# 设置Mysql开机启动(Mysql安装后默认开机启动)
[root@localhost ~] systemctl enable mysqld

# 禁用Mysql开机启动
[root@localhost ~] systemctl disable mysqld

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值