您的位置:首页 > 博客中心 > 数据库 >

数据库管理员密码的设置

时间:2022-03-14 00:02


查看一下

 

mysql>update mysql.user setpassword=password("123") where user=”root” and host=”localhost”; //配置密码   update更新一下user表里的字段password的数据,更新的密码123

mysql >flush privileges;  //刷新

mysql>exit  //退出

 

[root@localhost ~]#service mysql restart    //重启服务

 

[root@localhost ~]mysql -root -p123    //用新密码进入

 

 

2.重置管理员密码  

需要有MySQL-client-5.6.15-1.el6.x86_64.rpm这个包,mysqladmin这个命令才能用

 

[root@localhost ~]# mysqladmin -uroot -p password  "123456"   //设置新密码为“123456

Enter password:     //输入旧密码回车,旧密码正确新密码才能设置成功

[root@localhost ~]# 

[root@localhost ~]# mysql -uroot -p123456   //用新密码进入  


数据库授权的前期环境配置

 

1.用两台linux6.4做实验,确保互相能ping

2.临时关闭selinux

3.永久关闭selinux  【进vim /etc/sysconfig/selinux  配置配置SELINUX=disabled

 

步骤操作:

ping  数据库服务器ip地址

 

[root@localhost~]# service iptables stop   //停用防火墙

iptables:清除防火墙规则:                                 [确定]

iptables:将链设置为政策 ACCEPTfilter                    [确定]

iptables:正在卸载模块:                                   [确定]

[root@localhost~]# chkconfig  --level 35 iptablesoff   //下次开机不启动防火墙

[root@localhost~]# setenforce  0   //临时关闭selinux

[root@localhost~]# vim /etc/sysconfig/selinux   //永久关闭selinux

[root@localhost~]# grep disable /etc/sysconfig/selinux

#     disabled - No SELinux policy is loaded.

SELINUX=disabled        // 配置SELINUX=disabled

[root@localhost ~]#getenforce    //查看selinux的运行级别

Permissive

 

二、mysql数据库服务器登录账户的授权和权限撤销

 

默认情况下数据库管理员只能从数据库服务器本机登陆。

默认情况下数据库管理从服务器本机登陆的时候才有授权权限。

 

2.1用户授权

show grants;    //登陆账号查看自己的权限

select user,host,password  from mysql.user;   //查看当前数据库有哪些授权用户账号

 

show grants  for  root@‘192.168.10.20‘;    //查看授权用户账号root的权限

 

2.2授权命令的语法格式:

 

mysql> grant 权限列表  on  数据库 to 用户名@"客户端地址

     >identified  by "密码"  with grant option;

例子:

mysql> grant all on *.* to  root@"192.168.10.10"

mysql>identified  by "888" ,

mysql>with grant option;   //可选项,含义是授权给某个用户

 

对语法格式解释如下:

 

权限列表:(授权用户登陆之后有什么样的权限)

usage   无权限【除有浏览权限外,无其他权限】

all      所有权限

select,delete,update(字段名1,字段名2)

      

数据库名:(授权用户可以操作的库)

*.*    //服务器上的所有库所有表

数据库名.表名   //某个库里的某个表

数据库名.*   //某数据库里的所有表

 

用户名:(登陆数据库服务器时使用的名字)

授权时自定义用户名要有标识性  保存在mysql库的user表里

 

 

客户端地址:(授权用户可以从那台主机连接数据库服务器的地址,就是授权用户的地址)

代表所有主机

1.1.1.1  代表单个ip地址

192.168.1.%  代表某个网段   192.168.1.0网段

pc1.tarena.com  主机名  (数据库服务器要能够解析的主机名,可以以“单个主机名”来代表“客户端地址”)

%.tarena.com    区域    (数据库服务器要能够解析区域内的主机名,只要域名叫tarena.com都授权 %匹配全部)

 

 

identified by "密码"  (设置授权用户的密码)

可选项  不写时授权用户登陆数据库服务器没有密码 

 

with grant option  (授权用户是否有授权的权限)

可选项  不写时授权用户没有授权权限

 

2.3 mysql库下的表作用:

 

mysql.user          //对用户的授权信息

mysql.db            //用户对库的权限信息

mysql.tables_priv   //用户对表的权限信息

mysql.columns_priv  //用户对字段的权限信息

 

 

set password=password("新密码")   //授权用户登录后修改自己的密码

set password for 用户@“客户端地址”=password("新密码")//管理员重置授权用户密码

2.4删除授权用户

   delete  from mysql.user  where  user=’xxx’ and  host=”xxx”; 

 

 

撤销授权

格式语句:

revoke 权限列表  on  数据库名  from 用户名@"客户端地址";

 

mysql>flush privileges;   //重新加载mysql数据库信息配置【只要是手动对mysql数据库里表配置的时候,只有打这条命令才能立刻生效】


热门排行

今日推荐

热门手游