mysql数据备份操作 (linux下命令格式)
1.命令格式
mysqldump -u用户名 -p 源库名 > 路径/xxx.sql
2.源库名的表示方式
–all-databases 备份所有库
库名 备份单个库
-B 库1 库2 … 备份多个库
库名 表1 表2 … 备份指定表
3.数据恢复(在linux终端操作)
1.命令格式
mysql -uroot -p 目标库名 < 路径/xxx.sql
(创建一个空库之后才能恢复)
2.从所有库的备份中恢复某一个库(–one-database)
mysql -uroot -p --one-database 目标库 < 路径/all_mysql.sql
4.ER模型&ER图
ER模型即实体-关系模型,ER图即实体-关系图
1. 实体
定义: 现实世界中任何可以被认知,区分的事物
示例:学校,学生.课程,班主任
企业: 职工,产品
2. 属性
定义:实体所具有的特性
示例: 学生属性,产品属性
3.关系
定义:实体之间的关系
分类: 一对一的关系
一对多的关系
多对多的关系
4.ER图的绘制
1. 矩形框代表实体,菱形框代表关系,椭圆形代表属性.
5.workbench(图形化界面操作数据库)
6. 事务定义 一件事从开始发生到结束的过程
原子性: 一个事务时不可分割的工作单位,事务中的各个操作要么都做,要么都不做.
一致性: 事务必须从一个一致性状态到另一个一致性状态
隔离性: 一个事务的执行不能被其他并发事务干扰
持久性:一个事务一旦提交,它对数据的改变时永久性的
事务及事务回滚的应用
1. mysql中默认sql语句会自动commit到数据库
show variables like ‘autocommit’;
2. 事务应用
开启事务
start transaction;
## 此时autocommit 被禁用, sql命令不会对数据库中数据做修改.
终止事务:
commit(提交) rollback(回滚)
事务回滚只针对表的操作有效,对创建库创建表无效.
7.python数据库编程
1. python数据库接口(python DB-API)
定义 为开发人员提供的数据库应用编程接口
支持数据库服务软件:
mysql Oracle sql_server sybase mogodb
python 提供的操作mysql模块
模块名: mysql
2. mysql的使用流程
建立数据库连接
对象名(db) =pymysql.connect(‘主机地址’,‘用户名’,‘密码’,‘库名’,charset=’utf8‘)
创建游标对象
cur = db.cursor()
使用游标对象的方法和sql语句操控mysql数据库
提交commit
关闭游标
关闭数据库连接
connect 对象(db) 方法:
1.cursor()创建一个游标对象db.cursor()
2.commit提交到数据库 db.commit()
3.rollback() 回滚 db.rollback()
4.close() 关闭与数据库的连接db.close()
cursor游标对象(cur)的方法:
1.execute() 执行sql命令
2.fetchone() 取得结果集的第一条记录
3.fetchmany(数字)取得结果集的几条记录
4.fetchall() 取得结果集的所有行
5.close() 关闭游标.
属性: rowcount : 返回影响的行数.