mysql创建数据库和权限设置_mysql创建数据库和用户以及设置用户与权限
在mysql数据库的使用中,创建数据库无疑是最简单的部分:在mysql命令提示符下,输入如下命令:mysql > create databass dbname;//dbname数据库名称
创建成功后会有如下的所示的响应:
Query OK,1 row affected (0.0 sec)
如果没有得到响应,请确认在上面的命令行后面输入分号。
mysql的最好特性之一是支持复杂的权限系统。权限是对特定对象执行特定的操作的权利,它与特定的用户相关。由此我们在使用mysql系统的时候,对于每个需要使用该系统的用户,应该为他们创建一个账号和密码,这些用户名及密码不必与mysql之外的用户名和密码(unix等用户名,密码)相同。对于系统用户或者mysql用户最好使用不同的密码。
在mysql中创建一个用户时,就赋予了该用户一定的权限,这些权限指定了该用户在本系统中可以做什么和不可以做什么。
在创建用户的时候使用GRANT命令来授予mysql权限。这些权限分为四个级别:全局,数据库,表,列。
mysql中授权命令grant用法详解:
mysql中可以给你一个用户授予如select,insert,update,delete等其中的一个或者多个权限,主要使用grant命令,用法格式为:
grant 权限 on 数据库对象 to 用户
一、grant 普通数据用户,查询、插入、更新、删除 数据库中所有表数据的权利。
grant select on testdb.* to common_user@’%’
grant insert on testdb.* to common_user@’%’
grant update on testdb.* to common_user@’%’
grant delete on testdb.* to common_user@’%’
或者,用一条 MySQL 命令来替代:
grant select, insert, update, delete on testdb.* to common_user@’%’
二、grant 数据库开发人员,创建表、索引、视图、存储过程、函数。。。等权限。
grant 创建、修改、删除 MySQL 数据表结构权限。
grant create on testdb.* to developer@’192.168.0.%’;
grant alter on testdb.* to developer@’192.168.0.%’;
grant drop on testdb.* to developer@’192.168.0.%’;
grant 操作 MySQL 外键权限。
grant references on testdb.* to developer@’192.168.0.%’;
grant 操作 MySQL 临时表权限。
grant create temporary tables on testdb.* to developer@’192.168.0.%’;
grant 操作 MySQL 索引权限。
grant index on testdb.* to developer@’192.168.0.%’;
grant 操作 MySQL 视图、查看视图源代码 权限。
grant create view on testdb.* to developer@’192.168.0.%’;
grant show view on testdb.* to developer@’192.168.0.%’;
grant 操作 MySQL 存储过程、函数 权限。
grant create routine on testdb.* to developer@’192.168.0.%’; -- now, can show procedure status
grant alter routine on testdb.* to developer@’192.168.0.%’; -- now, you can drop a procedure
grant execute on testdb.* to developer@’192.168.0.%’;
三、grant 普通 DBA 管理某个 MySQL 数据库的权限。
grant all privileges on testdb to dba@’localhost’
其中,关键字 “privileges” 可以省略。
四、grant 高级 DBA 管理 MySQL 中所有数据库的权限。
grant all on *.* to dba@’localhost’
五、MySQL grant 权限,分别可以作用在多个层次上。
1. grant 作用在整个 MySQL 服务器上:
grant select on *.* to dba@localhost; -- dba 可以查询 MySQL 中所有数据库中的表。
grant all on *.* to dba@localhost; -- dba 可以管理 MySQL 中的所有数据库
2. grant 作用在单个数据库上:
grant select on testdb.* to dba@localhost; -- dba 可以查询 testdb 中的表。
3. grant 作用在单个数据表上:
grant select, insert, update, delete on testdb.orders to dba@localhost;
4. grant 作用在表中的列上:
grant select(id, se, rank) on testdb.apache_log to dba@localhost;
5. grant 作用在存储过程、函数上:
grant execute on procedure testdb.pr_add to ’dba’@’localhost’
grant execute on function testdb.fn_add to ’dba’@’localhost’
六、查看 MySQL 用户权限
查看当前用户(自己)权限:
show grants;
查看其他 MySQL 用户权限:
show grants for dba@localhost;
七、撤销已经赋予给 MySQL 用户权限的权限。
revoke 跟 grant 的语法差不多,只需要把关键字 “to” 换成 “from” 即可:
grant all on *.* to dba@localhost;
revoke all on *.* from dba@localhost;
八、MySQL grant、revoke 用户权限注意事项
1. grant, revoke 用户权限后,该用户只有重新连接 MySQL 数据库,权限才能生效。
2. 如果想让授权的用户,也可以将这些权限 grant 给其他用户,需要选项 “grant option“
grant select on testdb.* to dba@localhost with grant option;
这个特性一般用不到。实际中,数据库权限最好统一管理
在登录mysql系统后,要做的第一件事是指定要使用的数据库。即:
mysql > use dbname;//dbname是数据库的名称
或者也可以在登录时指定数据库而避免使用命令:
mysql -D dbname -h hostname -u username -p.
转自:http://blog.sina.com.cn/s/blog_6f145be10100tibo.html
mysql创建数据库和权限设置_mysql创建数据库和用户以及设置用户与权限相关推荐
- mysql没有创建数据库的权限设置_mysql 创建数据库,用户并给用户设置权限
mysql创建数据 create database dataBaseName default charset utf8 collate utf8_general_ci; --创建数据库并设置字符集 创 ...
- mysql创建表有则删除_MySQL创建表和删除表
创建表 简单的方式 CREATE TABLE person ( number INT(11), name VARCHAR(255), birthday DATE ); 或者是 CREATE TABLE ...
- mysql创建学生信息表学号_mysql创建学生信息表
mysql中,如何创建一个表,并加一条数据? 在一个数据库中创建一个学生表"student",要CSS布局HTML小编今天和大家分享使用查询语句,包括以下字如果想在数据库中创建一个 ...
- mysql创建索引的关键字为_MySQL创建索引(CREATE INDEX)
索引的建立对于 MySQL 数据库的高效运行是很重要的,索引可以大大提升 MySQL 的检索速度. 基本语法 MySQL 提供了三种创建索引的方法: 1) 使用 CREATE INDEX 语句 可以使 ...
- mysql语句创建临时表并存入数据_mysql创建临时表,将查询结果插入已有表中 | 学步园...
今天遇到一个很棘手的问题,想临时存起来一部分数据,然后再读取.我记得学数据库理论课老师说可以创建临时表,不知道mysql有没有这样的功能呢?临时表在内存之中,读取速度应该比视图快一些.然后还需要将查询 ...
- mysql数据库主要负责存储_MySQL默认数据库简介
类似于MS SQL Server等大型数据库,MySQL数据库也提供了内置的数据库,它们是:INFORMATION_SCHEMA mysql test 1.information_schema 其中, ...
- 导入mysql数据库怎么错误信息_mysql导入数据库错误
1)Err 1067: 原因是timestamp的默认值不正确. 查阅资料得知,mysql5.7版本中有了一个STRICT mode(严格模式),而在此模式下默认是不允许设置日期的值为全0值的,所以想 ...
- mysql数据库删除操作指令_MySQL删除数据库的命令是什么?
删除数据库的命令是:"DROP DATABASE 数据库名;":例"drop database student;"就是删除名为student的数据库." ...
- mysql查看数据表是否损坏_mysql 检查数据库是否损坏
MySQL主从复制之主库宕机处理 主库宕机 Master DOWN机-企业场景一主多从宕机从库切换主继续和从同步过程详解 登陆从库,show processlist; 查看两个线程的更新状态: 查看 ...
最新文章
- try-catch-finally 与返回值的修改
- jQuery选择器介绍:基本选择器、层次选择器、过滤选择器、表单选择器
- QT的QMutableHashIterator类的使用
- CentOS下的Mysql的安装和使用
- java并发编程实战阅读总结(b)
- html给图片设置编剧,漫画简明编剧教程【4】如何设计角色
- iOS开发 发布之后的Crash错误反馈(二)
- 创建win10介质进度为0_win10介质创建工具(media creation tool)下载
- 控制理论与控制工程_控制理论与控制工程专业介绍_研究方向_就业前景分析
- 收到计算机系统公司退款会计分录,​收到客人的退款的会计分录怎么写
- Python数据结构与算法(1.1)——数据结构与算法导论
- CCFTF17(上海):认知计算产业化如何落地(知识图谱、智能问答等)
- 复利计算1.0,2.0,3.0(java)
- javascript 下载方法
- 常用的第三方ui框架
- ftp文件服务器怎么迁移,ftp文件服务器迁移
- java swing界面设计_java swing界面设计
- 高颜值生物信息在线绘图工具
- [RK3288]PMU配置(RK808)【转】
- 分享Visual Studio 2019专业版、企业版密匙