在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创建数据库和用户以及设置用户与权限相关推荐

  1. mysql没有创建数据库的权限设置_mysql 创建数据库,用户并给用户设置权限

    mysql创建数据 create database dataBaseName default charset utf8 collate utf8_general_ci; --创建数据库并设置字符集 创 ...

  2. mysql创建表有则删除_MySQL创建表和删除表

    创建表 简单的方式 CREATE TABLE person ( number INT(11), name VARCHAR(255), birthday DATE ); 或者是 CREATE TABLE ...

  3. mysql创建学生信息表学号_mysql创建学生信息表

    mysql中,如何创建一个表,并加一条数据? 在一个数据库中创建一个学生表"student",要CSS布局HTML小编今天和大家分享使用查询语句,包括以下字如果想在数据库中创建一个 ...

  4. mysql创建索引的关键字为_MySQL创建索引(CREATE INDEX)

    索引的建立对于 MySQL 数据库的高效运行是很重要的,索引可以大大提升 MySQL 的检索速度. 基本语法 MySQL 提供了三种创建索引的方法: 1) 使用 CREATE INDEX 语句 可以使 ...

  5. mysql语句创建临时表并存入数据_mysql创建临时表,将查询结果插入已有表中 | 学步园...

    今天遇到一个很棘手的问题,想临时存起来一部分数据,然后再读取.我记得学数据库理论课老师说可以创建临时表,不知道mysql有没有这样的功能呢?临时表在内存之中,读取速度应该比视图快一些.然后还需要将查询 ...

  6. mysql数据库主要负责存储_MySQL默认数据库简介

    类似于MS SQL Server等大型数据库,MySQL数据库也提供了内置的数据库,它们是:INFORMATION_SCHEMA mysql test 1.information_schema 其中, ...

  7. 导入mysql数据库怎么错误信息_mysql导入数据库错误

    1)Err 1067: 原因是timestamp的默认值不正确. 查阅资料得知,mysql5.7版本中有了一个STRICT mode(严格模式),而在此模式下默认是不允许设置日期的值为全0值的,所以想 ...

  8. mysql数据库删除操作指令_MySQL删除数据库的命令是什么?

    删除数据库的命令是:"DROP DATABASE 数据库名;":例"drop database student;"就是删除名为student的数据库." ...

  9. mysql查看数据表是否损坏_mysql 检查数据库是否损坏

    MySQL主从复制之主库宕机处理 主库宕机  Master DOWN机-企业场景一主多从宕机从库切换主继续和从同步过程详解 登陆从库,show processlist; 查看两个线程的更新状态: 查看 ...

最新文章

  1. try-catch-finally 与返回值的修改
  2. jQuery选择器介绍:基本选择器、层次选择器、过滤选择器、表单选择器
  3. QT的QMutableHashIterator类的使用
  4. CentOS下的Mysql的安装和使用
  5. java并发编程实战阅读总结(b)
  6. html给图片设置编剧,漫画简明编剧教程【4】如何设计角色
  7. iOS开发 发布之后的Crash错误反馈(二)
  8. 创建win10介质进度为0_win10介质创建工具(media creation tool)下载
  9. 控制理论与控制工程_控制理论与控制工程专业介绍_研究方向_就业前景分析
  10. 收到计算机系统公司退款会计分录,​收到客人的退款的会计分录怎么写
  11. Python数据结构与算法(1.1)——数据结构与算法导论
  12. CCFTF17(上海):认知计算产业化如何落地(知识图谱、智能问答等)
  13. 复利计算1.0,2.0,3.0(java)
  14. javascript 下载方法
  15. 常用的第三方ui框架
  16. ftp文件服务器怎么迁移,ftp文件服务器迁移
  17. java swing界面设计_java swing界面设计
  18. 高颜值生物信息在线绘图工具
  19. [RK3288]PMU配置(RK808)【转】
  20. 分享Visual Studio 2019专业版、企业版密匙

热门文章

  1. c# 网络编程之http
  2. nn.Pixelshuffle的转化规则
  3. android安卓java文件转kotlin格式
  4. 软件工程是不是教会不怎么会写程序的人开发软件?
  5. uniapp h5 公众号 自定义卡片式分享链接
  6. 对电脑管家的一些不成熟分析
  7. 怎么查看linux java版本,linux查看本机java版本号
  8. Dom4j解析xml字符串
  9. xynuoj 1596: 香甜的黄油
  10. java 读取kepserver_记kepServer读写西门子PLC