Mysql密码管理及授权

目录

1 管理root用户密码

2 用户授权与权限撤销

3 安装图形管理工具

1 管理root用户密码

1.1 修改密码

方法1:用mysqladmin

该方式需要知道mysql的原密码

命令格式:

mysqladmin  -hlocalhost  -uroot -p password “新密码”

方法2:需要登录到mysql

授权用户修改自己的密码:

mysql> set password=password(“新密码”);

数据库管理员重设其它用户的密码:

mysql> set password for 用户名@’客户端地址’=password(“新密码”);

方法3: 用sql命令update直接编辑user表

mysql> use mysql; #系统自带的数据库

mysql> update user set authentication_string= password('新密码') where user = 'root';

mysql> flush privileges;

1.2 密码恢复及设置

修改配置文件/etc/my.cnf

[mysqld]

skip_grant_tables  #跳过授权表

#validate_password_policy=0  #刚进入mysql设置的,删除或者注释

#validate_password_length=6  #删除或者注释

[[email protected] ~]# systemctl restart mysqld

[[email protected] ~]# mysql  #不用密码可以进入数据库

mysql> select * from mysql.user\G; #密码存放的表

mysql> update mysql.user

set authentication_string=password('234567')

-> where user="root" and host="localhost";

更新成功之后,重回配置文件,修改过来,注释掉跳过授权表,重启服务。

2 用户授权与权限撤销

2.1授权

格式:

mysql> grant 权限列表 on 库名 to 用户名@”客户端地址” identified by “密码” with grant option;

权限列表:all ; select, insert, update ; usage

usage:该权限只能用于数据库登陆,不能执行任何操作;且usage权限不能被回收,使用REVOKE并不能删除用户。

库名:*.* 代表所有;库名.表名

客户端地址:% 代表所有可以ping通服务器的主机

with grant option 该选项可不写,给授权的客户机也可以进行对数据库授权

mysql> select @@hostname; #查看数据库服务器

mysql> select user();   #查看当前登录的用户名

mysql> show grants;     #查看权限

mysql> show processlist; #显示当前运行的程序访问用户的信息

2.2 撤销授权

(1)查看已有的授权用户:select user,host from mysql.user;

(2)查看已有的授权用户访问权:show grants for 用户名@”%”;

(3)撤销用户访问权限:

格式:

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

mysql> revoke grant option on *.* from [email protected]'%';

mysql> revoke all on *.* from [email protected]客户端地址

当对一个用户授权一个不存在的库时,该用户登录后只能对授权的库进行操作(如建只能授权的库)。

(4)或者对表的用户权限进行更改:

mysql> select *from  mysql.user\G;

mysql> update mysql.db set Delete_priv=”Y” where user=”用户名” and host=”客户端地址”;

flush privileges; #更新数据库

撤销的只是用户的权限并不是把用户删除.

撤销权限后会权限会变为usage,用户仍能登录。

(5)此时可以删除用户:

两种方法

第一种:delete from mysql.user where user=”” and host=””;

第二种:drop user 用户名@“客户端地址”;

flush privileges;

(6)数据库自带mysql库中表的含义:

mysql授权库  存储的是授权信息,使用不同的表存储不同的授权权限。

user      存储授权用户已有的授权用户

db        存储授权用户对库的访问权限

tables_priv  存储授权用户对表的访问权限

column_priv  存储授权用户对字段的访问权限

3 安装图形管理工具

3.1 PhpMyAdmin

[[email protected] ~]# yum -y install httpd php php-mysql

[[email protected] ~]# mv phpMyAdmin-4.1.2-all-languages

/var/www/html/pma

[[email protected] ~]# cd /var/www/html/pma

[[email protected] ~]# cp config.sample.inc.php  config.inc.php

[[email protected] ~]# vim config.inc.php

17行:$cfg[‘blowfish_secret’]=’test’; #在单引号里随意添加字符,如果不修改这项,会报错

31行:$cfg['Servers'][$i]['host'] = '数据库IP';

测试:从浏览器访问

firefox http://192.168.0.4/pma

原文地址:http://blog.51cto.com/13452945/2064430

时间: 2024-08-18 11:50:34

Mysql密码管理及授权的相关文章

mysql用户管理及授权管理

mysql用户和权限管理 mysqld进程在启动的时候,将table,host,db,table_privs,clumn_privs,procs_privs,proxies_privs载入内存. 用户账号: 用户名+主机 用户名:16字符以内. 主机: 主机名: mytest IP地址:172.168.1.20 网络地址:172.168.1.0/255.255.0.0 通配符: 172.168.%.% 172.168.1.2__ %.qq.com,注如果是域名,则mysql需要进行解析,如果取消

MySQL密码管理、存储引擎及事务

MYSQL密码管理: 修改用户密码: (1) SET PASSWORD [FOR 'user'@'host'] = PASSWORD('cleartext password'); (2) UPDATE mysql.user SET Password=PASSWORD('cleartext password')  WHERE User='USERNAME' AND Host='HOST'; (3) mysqladmin -uUSERNAME -hHOST -p  password 'NEW_PAS

MySql 用户管理 中添加用户,新建数据库,用户授权,删除用户,修改密码(注意每行后边都跟个;表示一个命令语句结束):

MySql中添加用户,新建数据库,用户授权,删除用户,修改密码(注意每行后边都跟个;表示一个命令语句结束): 1.新建用户 登录MYSQL: @>mysql -u root -p @>密码 创建用户: mysql> insert into mysql.user(Host,User,Password) values("localhost","test",password("1234")); 如果报错解决方法:https://i.c

mysql用户账号、权限、密码管理

一:用户账号管理 查看当前可登录数据库的用户 mysql>SELECT host,user FROM mysql.user; 创建新用户 mysql>CREATE USER username@host IDENTIFIED BY '密码'; 注意:username是用户名,host用于指定登录的主机,如果是本地用户用localhost,如果需要远程连接可以指定ip,或者使用“%”可以从任意主机登录. 删除用户 mysql>DROP USER pangpang@localhost ; 修改

MySQL数据库登录密码管理

mysql数据库安装完成默认管理员的登录密码为空,因此可以无需输入密码直接登录数据库,这样是不安全的,以下文章简单介绍如何设置管理员登录数据库的密码和如何修改登录密码,以及忘记登录密码如何处理. 一.环境介绍 操作系统:CentOS 6.5 数据库版本:MySQL 5.5.32 主机名称:mysql-singleton 二.数据库密码管理  1.设置数据库初始密码  [[email protected] ~]# mysqladmin -uoldcat password "123456"

MySql增加用户、授权、修改密码等语句

1. mysql 增加新用户: insert into mysql.user(Host,User,Password,ssl_cipher,x509_issuer,x509_subject) values("xx.xx.xx.xx","xiaomin.wxm",password("wxm"),'','',''); Query OK, 1 row affected (0.10 sec) 2.为用户授权. //登录MYSQL(有ROOT权限).我里我以

Mysql 数据库密码管理

1.密码为空时设置密码为 123456: mysqladmin -u root password '123456' 2.知道现有密码,需要修改密码为 123123: 2.1.第一种设置方法 mysql -u root -p123456 mysql> use mysql; mysql> update user set password=password('123123') where user="root"; mysql> flush  privileges; 2.2.

mysql维护管理的几点小技巧(自我总结)

一.mysql数据库用户密码修改方法 (1).在知道mysql数据库root用户密码条件下修改root用户密码wxsemico方法一:[[email protected] ~]# mysql -u root -pEnter password: 输入root密码mysql> show databases;mysql> use mysql;mysql> update user set password=password('wxsemico') where user='root';mysql&

十二、MySQL用户管理

MySQL是一个多用户数据库,具有功能强大的访问控制系统,可以为不同用户指定允许的权限.MySQL用户可以分为普通用户和root用户.root用户是超级管理员,拥有所有权限,普通用户只拥有被授予的各种权限. 12.1.权限表 MySQL服务器通过权限来控制用户对数据库的访问,权限表存放在MySQL数据库中,由MySQL_install_db脚本初始化.存储账户权限信息表主要有:user,db,host,table_priv.columns_priv.procs_priv. user表 user表