本文主要介绍了如何在pg数据库和MySQL中管理数据库和用户。我们讨论了在pg数据库中创建和管理数据库的基本步骤,包括使用SQL命令来创建、删除和修改数据库。我们转向MySQL,详细解释了如何创建和管理用户以及数据库。我们还探讨了如何在这两种数据库系统中设置权限,以确保数据的安全性。
MySQL数据库管理
1、创建数据库
(图片来源网络,侵删)
CREATE DATABASE 数据库名;
2、删除数据库
DROP DATABASE 数据库名;
3、查看所有数据库
SHOW DATABASES;
4、使用数据库
USE 数据库名;
5、修改数据库字符集
ALTER DATABASE 数据库名 CHARACTER SET 字符集名称;
MySQL用户管理
1、创建用户
CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';
2、删除用户
DROP USER '用户名'@'主机名';
3、修改用户密码
(图片来源网络,侵删)
SET PASSWORD FOR '用户名'@'主机名' = PASSWORD('新密码');
4、授权用户访问指定数据库的权限(全局权限)
GRANT ALL PRIVILEGES ON 数据库名.* TO '用户名'@'主机名';
5、授权用户访问指定数据库的特定权限(如SELECT, INSERT, UPDATE, DELETE等)
GRANT 权限类型 ON 数据库名.表名 TO '用户名'@'主机名';
6、撤销用户访问指定数据库的权限(全局权限)
REVOKE ALL PRIVILEGES ON 数据库名.* FROM '用户名'@'主机名';
7、撤销用户访问指定数据库的特定权限(如SELECT, INSERT, UPDATE, DELETE等)
REVOKE 权限类型 ON 数据库名.表名 FROM '用户名'@'主机名';
下面是一个简单的介绍,对比了PostgreSQL(简称PG数据库)和MySQL在管理数据库和用户方面的功能:
功能/数据库 | PostgreSQL | MySQL |
数据库创建 | CREATE DATABASE dbname; | CREATE DATABASE dbname; |
数据库删除 | DROP DATABASE dbname; | DROP DATABASE dbname; |
用户创建 | CREATE USER username WITH PASSWORD 'password'; | CREATE USER 'username'@'host' IDENTIFIED BY 'password'; |
用户删除 | DROP USER username; | DROP USER 'username'@'host'; |
修改用户密码 | ALTER USER username WITH PASSWORD 'newpassword'; | SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword'); 或使用ALTER USER 语句 |
授予权限 | GRANT privileges ON database.tablename TO username; GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO username; (对所有表) | GRANT privileges ON dbname.tablename TO 'username'@'host'; |
撤销权限 | REVOKE privileges ON database.tablename FROM username; | REVOKE privileges ON dbname.tablename FROM 'username'@'host'; |
查看权限 | SHOW GRANTS FOR username; | SHOW GRANTS FOR 'username'@'host'; |
刷新权限 | 不需要明确刷新,权限立即生效 | FLUSH PRIVILEGES; 来确保权限更改立即生效 |
数据库角色 | 支持角色概念,可以赋予角色权限,再将角色赋予用户 | 不支持角色概念,直接对用户授予权限 |
限制登录主机 | ALTER USER username WITH LOGIN CONNECTION LIMIT 1; (限制连接数,不是主机) | CREATE USER 'username'@'specific_host' IDENTIFIED BY 'password'; (限制用户只能从特定主机登录) |
备份数据库 | pg_dump dbname > backup_file.sql; | mysqldump u username p dbname > backup_file.sql; |
恢复数据库 | psql dbname | mysql u username p dbname |
请注意,上述命令和功能在不同的数据库版本中可能会有所变化,且具体操作时可能需要根据实际情况调整参数和权限设置,MySQL中的用户权限是与特定的主机绑定的,所以在创建用户和授权时需要指定主机名,而在PostgreSQL中,通常不需要指定主机,除非通过其他配置来限制用户的登录主机。
(图片来源网络,侵删)
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/694124.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复