MySQL的基本设定

来源:互联网 发布:php 调用setcookie 编辑:程序博客网 时间:2024/05/19 17:05

MySQL的基本设定

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

(一)搭建环境

1安装mariadb-server

[root@server ~]# yum install mariadb-server -y


2、开启mariadb

[root@server ~]# systemctl start mariadb

3、编辑/etc/my.cnf文件,只是添加一句,其他不变

[root@server ~]# vim /etc/my.cnf   

 (添加一句)  skip-networking=1


4、重启mariadb

[root@server ~]# systemctl restart mariadb

5、设置数据库登陆root登陆密码

[root@server ~]# mysql_secure_installation


注意:初始化的myaql数据库管理员并没有任何密码,按下回车键即可

6、设置密码,一次设置,一次确认


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

7、为了系统安全,以下的我都选择y


8、验证,如下显示则说明设置成功

[root@server ~]# mysql -uroot -p


(二)数据库密码的管理

修改root密码

情况一:已知root密码

这里以已知root密码为redhat为例

[root@server ~]# mysqladmin -uroot -predhat password linux

验证更改密码:可以看到新密码linux已经生效


情况二:遗忘root密码

1、关闭服务

[root@server ~]# systemctl stop mariadb

跳过授权表

[root@server ~]# mysqld_safe --skip-grant-tables &


2、此时,不需要登陆密码,直接进入mysql

[root@server ~]# mysql


3、查看存在的用户信息

分号(;)结束,回车执行 

MariaDB [(none)]> select * from mysql.user;


4、设置root登陆密码,并加密

MariaDB [(none)]> update mysql.user set password=password('westos') where User='root';


5、可以看到,root密码暗文已经更新


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

  【1】查找mysql相关进程

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


  【2】清理该进程

[root@server ~]# kill -9 3716

[root@server ~]# kill -9 3871


7、完成上述后,打开mariadb

[root@server ~]# systemctl start mariadb

8、验证更改后的密码

[root@server ~]# mysql -uroot -p


##密码的明文转化为暗文

MariaDB [westos]> UPDATE linux SET password=password('123') where username=('liming');


(三)用户授权

创建数据库用户sun,登陆密码123

MariaDB [westos]> CREATE USER sun@'localhost' identified by '123';


用户授权,如:SELECT,INSERT

MariaDB [westos]> GRANT SELECT,INSERT on westos.* TO sun@localhost;


查看用户授权

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

重载授权表

MariaDB [(none)]>  FLUSH PRIVILEGES;


演示上述效果:


撤销用户权限,如:SELECT,INSERT

MariaDB [(none)]> REVOKE SELECT,INSERT ON westos.* FROM sun@localhost;


继续演示效果:可见,用户sun的SELECT权限已经被撤销


删除用户

MariaDB [(none)]> DROP USER sun@localhost;


效果如下:用户sun已经不复存在


原创粉丝点击