数据库用户管理

这篇具有很好参考价值的文章主要介绍了数据库用户管理。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

数据库用户管理

一、创建:

1.新建用户:

CREATE USER '用户名'@'来源地址' [IDENTIFIED BY [PASSWORD] '密码'];

‘用户名’:指定将创建的用户名.
‘来源地址’:指定新创建的用户可在哪些主机上登录,可使用IP地址、网段、主机名的形式,本地用户可用localhost,允许任意主机登录,可用通配符%
‘密码’:若使用明文密码,直接输入’密码’,插入到数据库时由Mysql自动加密;若使用加密密码,需要先使用SELECT PASSWORD(‘密码’);获取密文,再在语句中添PASSWORD ‘密文’;若省略“IDENTIFIED BY"部分,则用户的密码将为空(不建议使用)

mysql> create user 'wang'@'192.168.174.15' identified by '123123';
Query OK, 0 rows affected (0.00 sec)

mysql> select password ('123123');
+-------------------------------------------+
| password ('123123')                       |
+-------------------------------------------+
| *E56A114692FE0DE073F9A1DD68A00EEB9703F3F1 |
+-------------------------------------------+
1 row in set, 1 warning (0.00 sec)

mysql> 

2.查看用户信息:

(1)创建后的用户保存在mysql 数据库的user表里:

mysql> use mysql;
Database changed
mysql> select user,authentication_string,host from user;
+---------------+-------------------------------------------+----------------+
| user          | authentication_string                     | host           |
+---------------+-------------------------------------------+----------------+
| root          | *6691484EA6B50DDDE1926A220DA01FA9E575C18A | localhost      |
| mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | localhost      |
| mysql.sys     | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | localhost      |
| wang          | *E56A114692FE0DE073F9A1DD68A00EEB9703F3F1 | 192.168.174.15 |
| riky          | *ECB7B63F43CDAAF45A9AA640809447642DB634B8 | 192.168.174.15 |
+---------------+-------------------------------------------+----------------+
5 rows in set (0.00 sec)

(2)重命名指定:

rename user 'billkin'@'localhost' to 'pp'@'localhost';

数据库用户管理,数据库,adb,云计算,运维

(3)删除用户:

drop user 'pp'@'localhost';

数据库用户管理,数据库,adb,云计算,运维

(4)修改当前用户密码:

set password=password('abc123');
Query OK, 0 rows affected, 1 warning (0.00 sec)

(5)修改其他用户密码:

set password for 'riky'@'192.168.174.15'=password('abc123');
  • 忘记root密码的解决办法:

  • 修改/etc/my.cnf 配置文件,免密登陆mysql

    vim /etc/my.cnf
    [mysqld]
    skip-grant-tables    #添加,使登录mysql不使用授权表
    systemctl restart mysqld
    
  • mysql #直接登录,然后使用SQL语句修改密码

    UPDATE mysql.user SET AUTHENTICATION_STRING = PASSWORD('abc123') where user='root';
    FLUSH PRIVILEGES;
    quit
    mysql -u root -pabc123
    PS:最后再把/etc/my.cnf 配置文件里的skip-grant-tables 删除,并重启mysql服务
    

3.数据库用户授权:

(1)授予权限:

grant 提权
GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'来源地址' [IDENTIFIED BY '密码'];
grant all privileges on exo.phuket to 'wang'@'%' identified by 'abc123';

#权限列表:用于列出授权使用的各种数据库操作,以逗号进行分隔,如“select, insert, update”。使用"all"表示所有权限,可授权执行任何操作。

#数据库名.表名:用于指定授权操作的数据库和表的名称,其中可以使用通配符"*"。例如,使用“exo.*"表示授权操作的对象为school数据库中的所有表。

#'用户名@来源地址':用于指定用户名称和允许访问的客户机地址,即谁能连接、能从哪里连接。来源地址可以是域名、IP地址,还可以使用“%”通配符,表示某个区域或网段内的所有地址,如“%.exo.com"、“192. 168.174.%”等。

#IDENTIFIED BY:用于设置用户连接数据库时所使用的密码字符串。在新建用户时,若省略“IDENTIFIED BY"部分,则用户的密码将为空。

#允许用户billkin在本地查询phuket数据库中所有表的数据记录,但禁止查询其他数据库中的表的记录。
grant select on phuket.* to 'riky'@'localhost' IDENTIFIED BY 'abc123';

(2)允许用户wang在所有终端远程连接mysql,并拥有所有权限。

grant all privileges on *.* to 'wang'@'%' identified by 'abc123';

flush privileges;    #刷新权限
quit

mysql -u wang -pabc123
use exo;
show tables; .
select * from phuket;

数据库用户管理,数据库,adb,云计算,运维

(3)查看权限:

mysql -u wang -pabc123
SHOW GRANTS FOR 用户名@来源地址;
show grants for 'wang'@'%';
+------------------------------------------------------+
| Grants for wang@%                                    |
+------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'wang'@'%'            |
| GRANT ALL PRIVILEGES ON "exo"."phuket" TO 'wang'@'%' |
+------------------------------------------------------+
2 rows in set (0.00 sec)

数据库用户管理,数据库,adb,云计算,运维

(4)撤销权限:

REVOKE 权限列表 ON 数据库名.表名 FROM 用户名@来源地址;
mysql> revoke all on *.* from 'wang'@'%';
Query OK, 0 rows affected (0.01 sec)

mysql> show grants for 'wang'@'%';
+------------------------------------------------------+
| Grants for wang@%                                    |
+------------------------------------------------------+
| GRANT USAGE ON *.* TO 'wang'@'%'                     |
| GRANT ALL PRIVILEGES ON "exo"."phuket" TO 'wang'@'%' |
+------------------------------------------------------+
2 rows in set (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> quit
Bye
  • 用用户wang账号登陆MySQL,测试权限是否被撤销:
    数据库用户管理,数据库,adb,云计算,运维

(5)授权用户权限 all privileges 代表了哪些权限:

insert(插入数据)
select(查询数据)
update(更新表的数据)
delete (删除表中的数据)
drop (删除库 和表)
create (创建库,表)
index (创建索引)
alter (更改表的属性)
create view (创建视图)
create routine (创建存储过程)
alter routine (修改存储过程)
event (事件)
trigger on (创建触发器)

二、总结:

数据库用户管理权限是指在数据库系统中授权用户访问和管理数据库的权限,对于企业来说是非常重要的。以下是数据库用户管理权限的重要性:

  1. 数据保密性:对于用户管理权限进行精细的控制可以提高数据的保密性。通过对用户进行分组授权,可以将敏感数据的访问权限限制在需要访问的人员范围内。
  2. 数据可用性:通过对用户进行授权,可以保证用户仅能访问其所需的数据,而不会破坏其他数据的稳定性和完整性。同时,可以通过授权限制用户的访问频率以及数据的查询范围,从而避免系统崩溃和数据丢失等问题。
  3. 数据完整性:通过对用户进行精细的控制,可以保证数据完整性。例如,通过设置字段约束、验证规则和触发器等,可以保证在数据插入、修改或删除时数据的准确性。
  4. 数据安全性:通过对用户进行授权和管理,可以保证数据的安全性。例如,可以对登陆、访问或执行某些敏感操作需要口令验证和密码策略等。
  5. 合规性:对于一些特殊行业来说,例如金融业、医疗业等,有一些合规要求需要对数据进行严格的管控。通过对用户进行细致的权限分配和控制,可以避免系统漏洞或数据泄露等问题,满足合规性要求。

,通过设置字段约束、验证规则和触发器等,可以保证在数据插入、修改或删除时数据的准确性。
4. 数据安全性:通过对用户进行授权和管理,可以保证数据的安全性。例如,可以对登陆、访问或执行某些敏感操作需要口令验证和密码策略等。
5. 合规性:对于一些特殊行业来说,例如金融业、医疗业等,有一些合规要求需要对数据进行严格的管控。通过对用户进行细致的权限分配和控制,可以避免系统漏洞或数据泄露等问题,满足合规性要求。文章来源地址https://www.toymoban.com/news/detail-569616.html

到了这里,关于数据库用户管理的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • openGauss学习笔记-108 openGauss 数据库管理-管理用户及权限-用户

    使用CREATE USER和ALTER USER可以创建和管理数据库用户。openGauss包含一个或多个已命名数据库。用户和角色在整个openGauss范围内是共享的,但是其数据并不共享。即用户可以连接任何数据库,但当连接成功后,任何用户都只能访问连接请求里声明的那个数据库。 非 三权分立 下,

    2024年02月08日
    浏览(60)
  • Mysql数据库——用户管理与授权

    用户信息存放在 mysql 数据库下的 user 表(MySQL 服务下存在一个系统自带的 mysql 数据库)。 1.新建用户 2.查看用户信息 3.重命名用户 RENAME USER \\\'zhangsan\\\'@\\\'localhost\\\' TO \\\'lisi\\\'@\\\'localhost\\\'; 4.删除用户 DROP USER \\\'lisi\\\'@\\\'localhost\\\'; 5.修改当前登录用户密码 SET PASSWORD = PASSWORD(\\\'abc123\\\'); 6.修

    2024年02月09日
    浏览(52)
  • Mysql数据库表管理和用户管理与授权

    1)方式一:创建新表,导入数据  2)复制表(直接复制表不能保证原有的表结构)  创建方式与创建表完全一致,最大的区别是,临时表只在当前的数据库连接生效,当数据库连接断开或重新连接终端时,该临时表均失效,无法查看。 方式一:delete清空   方式二:truncat

    2024年02月09日
    浏览(49)
  • Mysql数据库中的用户管理与授权

    ddl: create drop alter dml:对数据进行管理update insert into delete truncate dql:查询语句 select dcl:权限控制语句grant revoke create user \\\'用户名\\\'@\\\'主机\\\' identified by \\\'密码\\\' 加密 SELECT PASSWORD(\\\'密码\\\'); #先获取加密的密码 CREATE USER \\\'lisi\\\'@\\\'localhost\\\' IDENTIFIED BY PASSWORD \\\'加密的密码\\\';  select user(); grant all

    2024年02月07日
    浏览(52)
  • 金仓数据库KingbaseES安全指南--3.1. 用户管理

    目录 3.1.1. 关于用户安全 3.1.2. 预定义管理用户 3.1.3. 创建用户 3.1.4. 修改用户 3.1.5. 删除用户 3.1.6. 用户资源限制 3.1.7. 用户的数据字典视图 3.1.1. 关于用户安全 您可以通过设置口令和指定特殊限制来保护用户帐户。 KingbaseES 数据库初始化完成后,会创建三个用户:数据库

    2024年02月06日
    浏览(66)
  • 网络安全 Day22-mariadb数据库用户管理

    用户的格式: 用户@主机范围 合起来才算一个用户 授权主机范围 只能从本机访问: localhost 或 127.0.0.1 或 10.0.0.166 (指定IP) 授权整个网段: 授权10.0.0.1–10.0.0.254: 10.0.0.0/24 或 10.0.0.% 授权192.168.0.1—192.168.254.254: 192.168.% 严令 禁止 直接使用 % 用户增删改查 创建用户 语法: create user b

    2024年02月14日
    浏览(34)
  • MySQL:事务、索引、用户管理、备份、数据库设计(三大范式)

    事务 (transaction):要么都成功,要么都失败。 核心 :将一组 SQL 放在一个批次中去执行。 原则 ACID :原子性(atomicity)、一致性(consistency)、隔离性(isolation)、持久性(durability)。 原子性 :一个事务中的所有步骤 要么都 成功, 要么都 失败,不能只成功一个步骤。 一致性 :包括

    2023年04月26日
    浏览(81)
  • MySQL数据库——SQL(4)-DCL(管理用户、权限控制)

    目录 管理用户 1.查询用户 2.创建用户 3.修改用户密码 4.删除用户 示例 权限控制 1.查询权限 2.授予权限 3.撤销权限 示例 DCL总结 DCL DCL英文全称是Data Control Language(数据控制语言),用来管理数据库用户、控制数据库的访问权限。 注意: 主机名可以使用通配符‘%’。 这类S

    2024年02月12日
    浏览(60)
  • openGauss学习笔记-105 openGauss 数据库管理-管理用户及权限-默认权限机制

    数据库对象创建后,进行对象创建的用户就是该对象的所有者。openGauss安装后的默认情况下,未开启 三权分立 ,数据库系统管理员具有与对象所有者相同的权限。也就是说对象创建后,默认只有对象所有者或者系统管理员可以查询、修改和销毁对象,以及通过 GRANT 将对象的

    2024年02月07日
    浏览(57)
  • 达梦数据库8用户管理以及忘记sysdba密码修改办法

    达梦数据库8用户管理 1.创建用户的语法: 创建自定义用户gin,设置密码为123456789,密码要符合密码策略(PWD_POLICY)要求,指定默认表空间为MAIN 2.锁定/解锁用户 3.修改用户的密码(同样要符合密码策略PWD_POLICY) 4.修改用户默认表空间 –尝试从MAIN表空间修改到TEST 先创建TEST的表

    2024年02月12日
    浏览(142)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包