Linux中MySQL的环境设定、MYSQL的root用户的密码修改、用户权限管理

                                                  MySQL的基本设定

  本次博文主要分为三部分:搭建数据库环境、数据库密码的更改、以及用户授权管理。

一、搭建数据库环境

1、安装mariadb-server

[root@dns /]#  yum  install  mariadb-server  -y

2、开启mariadb

[root@localhost /]#  systemctl  start  mariadb

3.编辑/etc/my.cnf文件,添加 skip-networking=1

     做该操作是因为初始情况下数据库的端口是打开的状态,如下图:

   为了安全起见,我们通过编辑配置文件的方式将端口关闭:

[root@localhost /]# vim /etc/my.cnf

    重启网络后再次查看端口的状态:

4.数据库的安全初始化:

#  输入命令  mysql_secure_installation 开始数据库的安全初始化:

[root@localhost /]# mysql_secure_installation

# 接下来让输入当前数据库密码,如下图,因为第一次安装数据库后默认没有密码,按‘ ENTER’ 键下一步:

    注意:MySQL数据库管理员的root和Linux账号的root是完全无关的。因为MySQL数据库软件也是个多用户的操作环境,只是在该软件内恰好有个管理者账号也是root而已。

# 接下来让我们设置数据库root用户的密码:

# 下文的设置都选择 ‘ Y‘:

# 5. 初始化已经完成,现在进行测试:

    使用root用户登陆数据库,出现下图字符表明成功登陆进数据库:

二、数据库root用户密码的更改

########## 情况一: 已知root用户密码

[root@localhost /]# mysqladmin -uroot -predhat password 245room

     经过修改 旧密码已经不能 登陆,更改的新密码能够登陆数据库。

################ 情况二: 忘记root用户密码

# 1.关闭服务:

[root@localhost /]#  systemctl stop mariadb.service

# 2.进入数据库的安全模式:

   此步操作相当于linux系统的单用户模式,该操作可以跳过数据库系统认证授权表这一步,所以登陆时可以免密码登陆:

      免密登陆mysql数据库:

#  3.修改root用户密码:

MariaDB [mysql]> UPDATE mysql.user SET password=password('redhat') WHERE User='root'

查看我们修改的root用户的密码:

我们发现修改的密码为加密的格式,这种方式安全度高。

我们也可以将密码转化为明文的格式:

MariaDB [mysql]> UPDATE mysql.user SET password=('redhat') WHERE User= 'root';

# 4.清空缓存信息(没有此步骤,则可能会出现新旧密码都能登陆,从而影响正常使用)

##  先查找与mysql相关的进程:

[root@localhost ~]# ps aux | grep mysql

## 然后结束这些进程:

# 5. 测试修改密码是否成功:

   先开启服务:

[root@server ~]# systemctl start mariadb

     再用新密码登陆:

   结果证明密码修改成功

三、mrsql的用户授权:

# 1. 添加数据库新用户spring,密码为123:

MariaDB [(none)]> create user spring@localhost identified by '123';        ##### 创建一个新用户spring ,密码为123

    查看添加的新用户spring:

MariaDB [(none)]> select user,host,password from mysql.user;

用新建的用户登录数据库:

[root@localhost ~]# mysql -uspring -p123

登陆成功

但是该用户对数据库无任何权限,什么操作也不能进行:

  如下图,显示库时不能看见任何库文件(注意information_schema这个文件是类似于数据库说明书的东西,不是库文件):

我们用命令查看spring 用户的权限情况:

MariaDB [(none)]> SHOW GRANTS for spring@localhost;

显示无任何权限。

# 2. 给新建用户授权浏览权限:

      第一步,用root用户登陆进数据库:

      第二步,给用户spring授权:

MariaDB [(none)]> GRANT SELECT ON 246room.* TO spring@localhost;   ### 授予spring用户浏览246room这个库的所有数据的权限

        载入授权表:

       查看权限是否生效,如下图:

MariaDB [(none)]> SHOW GRANTS FOR spring@localhost;

      用spring户用测试权限是否生效:

如下图,库文件已经能查看了:

 如下图,能查看该库中的表格了:

也能查看表格的内容了:

# 3.撤销用户授权:

 先查看spring用户都有什么权限:

   移除对spring用户的 SELECT和INSERT权限:

MariaDB [(none)]> REVOKE SELECT,INSERT ON 246room.* FROM spring@localhost;

  再次查看spring用户的权限时,如下图所示权限已被撤销:

# 4. 删除用户:

查看spring用户:

删除spring用户:

MariaDB [mysql]> DROP USER spring@localhost;

再次查看用户时,spring用户已经不存在:

猜你喜欢

转载自blog.csdn.net/qq_40628106/article/details/83989118