概述
创建用户
create user 用户名@主机名 identified by '密码’
说明:
1)Create user 关键字
2)用户名 //登录数据库服务器的名称 mysql –h主机名 –u用户名 –p密码
3)主机名 //可以是域名或IP地址或 ‘%’, 代表任意主机名可以登录数据库服务器
4)“@” //用户名与主机名之间分隔符
5)Identified by //在创建用户时候设置的密码 , 注意设置密码时候 必须 加 引号
查看本机的所有用户
在mysql数据库的user表中
修改用户密码
1)自己修改密码
set password = password(‘新密码’)
1)为普通用户修改密码
Set password for 用户名@主机 = password(‘新密码’);
4.删除用户
drop user 用户@主机
二、权限管理
1.分配权限
Grant 权限列表 on 库.表 to 用户@主机
说明:
1)Grant 授权
2)权限列表: 设置用户可以操作数据库或的权限,如select,update,delete…. , 如果all 代表所有权限.
3)On 库.表名; // on 关键字, 库名.表名 : 对哪个数据库下的表进行设置权限.
4)如果库名.* //库中所有的表
5)如果 all //代表数据库服务器中所有的数据库
6)To //为哪个用户授权.
使用select 执行查询如下图:
2.取消权限
Revoke 权限列表 on 库.表 from 用户@主机
说明:
1)Revoke 关键字 取消授权
2)From 从哪个用户将权限收回.
三、数据库备份与恢复
1.为什么要备份
有不可抗拒的因素,导致数据库损坏. 如果有了备份则可以通过备份的数据进行恢复.
2.使用备份与恢复的命令
1)备份: mysqldump
2)恢复: mysql
3)注意: 以上两个命名是 cmd下执行的. (不用登录数据库服务器)
3.mysqldump单表备份与恢复
备份: mysqldump –h主机 –uroot –proot 库名 表名 > 路径.sql
说明:
1)“>” 将备份的数据放到哪个SQL文件中 “*.sql “
2)在备份单表时, 注意写法, 库名 空格 表名; (不是库名.表名)
恢复:mysql –uroot –proot 库名 < 路径.sql
说明:
使用 mysql 这个命令行恢复
2)注意 “
3)注意, 在恢复时, 直接写库名 (在恢复是不加表名);
将tb_stu表删除:
恢复一下:
4.mysqldump整个数据库备份与恢复
备份: mysqldump –uroot –proot 库名 > 路径.sql
恢复:mysql –uroot –proot 库名
删除数据库:
将db_mytest.sql数据库文件中所有数据进行恢复
在恢复时候,要创建一个新空库, 库名自定义;
Create database db_mytest;
使用mysql进行恢复:
登录数据库服务器查看所有数据库:
四、视图(view)
1.视图的概念
数据库中的视图指的是一个虚拟表,其内容由查询定义。同真实的表一样,视图也是由行与列构成的。视图的数据来源由SQL语句查询得到,不存储数据。
2.视图的创建方法
格式:
Create view 视图的名称 as select 查询 ;
创建一个视图: tb_stu表中 age小于25的所有记录
Create view v_age as select * from tb_stu where age <25;
3.查看视图创建语句
4.查看视图结构
Desc 视图名称
5.显示所有视图
Select * from information_schema.views G
6.修改视图
Alter view 视图名称 as select 查询
查询(使用)视图
7.更新视图中数据
8.删除视图
Drop view 视图的名称
9.视图算法
概述: 指的是一个视图是在什么时候执行,依据哪些方式执行
1)Merge合并
合并的执行方式,每当执行的时候,先将视图的sql语句与外部查询视图的sql语句,合并在一起再执行;
格式: create ALGORITHM=MERGE view 视图名称 as SQL查询;
说明: Algorithm 视图定义算法的关键字
2)Temptable临时表
临时表模式,每当查询的时候,将视图所使用的select语句生成一个结果的临时表,再在当前的临时表内进行查询。(先执行视图中的SQL语句虚拟表,然后再从这个虚拟表中再执行查询)
格式: create ALGORITHM= TEMPTABLE view 视图名称 as SQL查询;
3)Merge, Temptable算法的差异:
实例: 统计表: tb_phone , 同类手机的最高价格的产品?
10.视图的应用场景
1)应用复杂的SQL语句进行简化语句输入
2)隐藏某些字段,保护数据
五、事务
1.事务的概念
事务(transaction)是一组SQL语句操作,组成这组操作的各个SQL语句,都必须全部执行成功,才有结果. 任意一个SQL语句执行失败,最终结果将不会真正执行.
2.事务与存储引擎
3.事务处理
1)开启事务
式: start transaction ; 或 begin transaction;
Mysql默认SQL语句结束符为 “;”, 由于事务中有多条SQL语句,事务还没有结束,此时不能执行SQL语句. 在事务当中,要修改一个默认的SQL语句的结束符;
修改的方法: delimiter 语句结束符 , 语句结束符,可以自己定义, 如: //, ,,,$,??,???
当事务所有SQL语句完成之后,再将结束符修改回来, 再修改结束符为 “;”
Delimiter // 开始
写多条
SQL语句1;
SQL语句2;
……
// 结束
Delimiter ; 再将结束符修改回来
Delimiter //
Sql;
Sql;
//
Delimiter 空格 ;
2)提交事务
delimiter //
update icbc set money=money-500 where name = 'tom';
update icbc set money=money+500 where name = 'jerry';
//
Delimiter ;
原理: 事务中所有的SQL语句执行成功, 这个修改只是在内存中发生变化 ,而实际数据并没有改变. 对于事务修改原始数据,必须提交的过程, commit ;
再使用另一个窗口查询:
3)回滚事务
4.事务的特点(ACID)
1)原子性(Atomicity):事务是由一个或一组相互关联的SQL语句组成,这些语句被认为是一个不可分割的单元。
2)一致性(Consistency):对于数据库的修改是一致的,数据库从一个状态到另一个状态
3)隔离性(Isolation):每个事务都有自己的空间,一个事务的执行不被其它事务所干扰
4)持久性(Durability):提交了这个事务之后对数据的修改更新就是永久的。
六、MySQL中函数
1)系统函数
函数的调用方法: select 函数名称([参数])
now();
最后
以上就是开朗鸡为你收集整理的mysql 创建视图的权限_mysql创建用户视图 事务存储过程 触发器 约束的打怪的全部内容,希望文章能够帮你解决mysql 创建视图的权限_mysql创建用户视图 事务存储过程 触发器 约束的打怪所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复