MySQL--数据库操作

创建
Create database mydb1;
Create database mydb2 character set gbk;
Create database mydb3 character set gbk COLLATE gbk_chinese_ci;   
查询
查看当前数据库服务器中的所有数据库
Show databases;
查看前面创建的mydb2数据库的定义信息
Show  create  database mydb2;
删除前面创建的mydb3数据库
Drop database mydb3;
修改
查看服务器中的数据库,并把mydb2的字符集修改为utf8;
alter database mydb2 character set utf8;
删除    Drop database mydb3;
* 其他:
查看当前使用的数据库    Select database();切换数据库  Use mydb2;

1.    备份
Mysqldump –uroot –p123  mydb1>d:/mydb1.sql
2.    恢复
前提:必须手动创建数据库
库外恢复:mysql –uroot –p123 mydb1<d:/mydb1.sql
库内恢复:需要登录数据库
手动创建数据库,use databaseName;
  source d:/mydb1.sql

 注意:备份和第一种恢复操作不需要登录数据库

事务操作:

cmd中:mysql的事务的提交默认的时自动提交的。

查看MySQL的事务的提交方式:

show variables like '%commit%';

设置MySQL事务的提交方式:

set autocommit = off;

 当自动提交关闭后,以后每条语句都必须手动commit才可以生效。

手动提交事务:

star transaction;开启事务(使用此语句后,自动事务将失效)

commit; 真正修改数据库数据。

rollback;将数据恢复到原始状态。

事务隔离级别:

脏读:一个事务读取到了另一个事务未提交数据
不可重复读:指多次读取的数据不一致(读取到了一个事务的提交数据)  强调update【指的是数据内容的变化】
虚读或幻读:指多次读取的数据不一致 强调insert 【指的是数据的数量的变化】

1 Serializable:可避免脏读、不可重复读、虚读情况的发生。(串行化)
2 Repeatable read:可避免脏读、不可重复读情况的发生。(可重复读)不可以避免虚读
3 Read committed:可避免脏读情况发生(读已提交)
4 Read uncommitted:最低级别,以上情况均无法保证。(读未提交)
Mysql数据库默认是  Repeatable read
Oracle数据库默认是read committed

设置事务的隔离级别:
Set session transaction isolation level read uncommitted;

猜你喜欢

转载自jackpot1234.iteye.com/blog/2325992