前言
Centos7 已经停止维护,学习其他linux系统势在必行,今天我们要探讨的是: 在Rocky linux9的系统上安装MySQL8
文章目录
- 前言
- 1. 从Appstream中进行安装
- 1.1 更新系统中的所有软件包
- 1.2 安装MySQL
- 1.3 启动并测试
- 1.4 查看MySQL版本
- 2. 初始化操作
- 2.1 修改root用户密码
- 2.2 设置远程登录用户
- 2.3 创建一个mufeng用户对数据库的表拥有查询权限
- 总结
1. 从Appstream中进行安装
1.1 更新系统中的所有软件包
[root@mufeng ~]# dnf upgrade --refresh -y
这是一条 Linux 命令,用于升级系统软件包。具体来说:
- dnf 是一种基于 RPM 的软件包管理器,用于 Fedora 和基于其的发行版。
- upgrade 参数表示升级软件包,同时删除不再需要的软件包。
- –refresh 参数表示在本地缓存之前刷新元数据。这会从所有被配置的仓库中下载每个仓库的元数据,并与已经存储在本地的元数据进行比较。
总之,这条命令的作用是:通过刷新所有被配置的软件包仓库,为系统提供最新的软件包,并升级当前已安装的软件包,以提高系统的稳定性和安全性。
1.2 安装MySQL
[root@mufeng ~]# dnf -y install mysql mysql-server
1.3 启动并测试
[root@mufeng ~]# systemctl restart mysqld
[root@mufeng ~]# systemctl enable mysqld
Created symlink /etc/systemd/system/multi-user.target.wants/mysqld.service → /usr/lib/systemd/system/mysqld.service.
[root@mufeng ~]# systemctl is-active mysqld
active
1.4 查看MySQL版本
[root@mufeng ~]# mysql -V
mysql Ver 8.0.32 for Linux on x86_64 (Source distribution)
2. 初始化操作
2.1 修改root用户密码
root@mufeng ~]# mysql
mysql> alter user 'root''localhost' identified by "123456";
ERROR 1396 (HY000): Operation ALTER USER failed for 'root\'localhost'@'%'
mysql> alter user 'root'@'localhost' identified by "123456";
Query OK, 0 rows affected (0.01 sec)
2.2 设置远程登录用户
# 添加登录用户
mysql> create user root@'%' identified by '123456';
Query OK, 0 rows affected (0.01 sec)
# 为远程用户分配权限
mysql> grant all privileges on *.* to root@'%';
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
查看当前用户的信息
mysql> select user,host from mysql.user
-> ;
+------------------+-----------+
| user | host |
+------------------+-----------+
| root | % |
| mysql.infoschema | localhost |
| mysql.session | localhost |
| mysql.sys | localhost |
| root | localhost |
+------------------+-----------+
5 rows in set (0.00 sec)
2.3 创建一个mufeng用户对数据库的表拥有查询权限
mysql> create user mufeng@'%' identified by '12345678';
Query OK, 0 rows affected (0.00 sec)
mysql> create database mufengtest;
Query OK, 1 row affected (0.00 sec)
mysql> use mufengtest
Database changed
mysql> create table aa(name int)
-> ;
Query OK, 0 rows affected (0.01 sec)
mysql> grant select on aa to mufeng@'%';
Query OK, 0 rows affected (0.00 sec)
mysql> select user,host from mysql.user
-> ;
+------------------+-----------+
| user | host |
+------------------+-----------+
| mufeng | % |
| root | % |
| mysql.infoschema | localhost |
| mysql.session | localhost |
| mysql.sys | localhost |
| root | localhost |
+------------------+-----------+
6 rows in set (0.00 sec)
mysql>
常用的命令:
在 MySQL 中,除了 grant all privileges 授予所有权限之外,还有很多其他的权限相关的语句,包括:
- grant select on <table> to <user>:授予一个用户对一个表的 SELECT 权限。
- grant update on <table> to <user>:授予一个用户对一个表的 UPDATE 权限。
- grant delete on <table> to <user>:授予一个用户对一个表的 DELETE 权限。
- grant insert on <table> to <user>:授予一个用户对一个表的 INSERT 权限。
- grant create on <database> to <user>:授予一个用户在指定的数据库中创建表的权限。
- grant create view on <database> to <user>:授予一个用户在指定的数据库中创建视图的权限。
- grant show view on <database> to <user>:授予一个用户查看指定的数据库中视图的权限。
- grant execute on <procedure> to <user>:授予一个用户执行一个存储过程的权限。
- grant all on <database>.* to <user>:授予一个用户对指定数据库的所有表的所有权限。
- grant reload,shutdown on . to <user>:授予一个用户执行指定操作的权限,例如重启或关闭 MySQL 服务器。
总结
本文主要介绍了 在rocky 系统中安装MySQL8的过程,以及安装好MySQL8后修改密码和进行授权的操作