MYSQL数据库学习十八 数据库维护和性能提高
18.1 数据备份
可能造成数据损失的原因有:
- 存储介质故障:保存数据库文件的磁盘设备损坏,用户没有数据库备份导致数据彻底丢失。
- 用户的错误操作:如误删了某些重要数据,甚至整个数据库。
- 服务器的彻底瘫痪:如数据库服务器彻底瘫痪,系统需要重建。
1. 复制数据文件(只适合存储引擎为MyISAM的表)
2. mysqldump
1) 备份一个数据库
mysqldump -u username -p dbname
table1 table2 …tablen //如果没有参数table,表示备份整个数据库
> backupname.sql
2) 备份多个数据库
mysqldump -u username -p --databases
dbname1,dbname2,...,dbnamen
> backupname.sql
3) 备份所有数据库
mysqldump -u username -p --all -databases
> backupname.sql
18.2 数据还原
1. 复制数据文件 (只适合存储引擎为MyISAM的表)
利用18.1.1中的备份文件将MySQL数据库服务器还原到备份时的状态。注意这种方式必须保证两个MySQL数据库的主版本号一致,才能保证两个MySQL数据库的文件类型是相同的。
2. mysqldump
mysqldump -u username -p [dname]<backupname.sql
18.3 实现数据库表导出到文本文件
通过数据库表的导出和导入操作,可以在MySQL数据库服务器与其他数据库服务器间(SQL SERVER、ORACLE)轻松移动数据。
1. SELECT ... INTO OUTFILE
SELECT [file_name] FROM table_name
[WHERE condition]
INTO OUTFILE 'file_name'[OPTION]
OPTION 可以是下面6个值的任何一个。
- FIELDS TERMINATED BY 'string':用来设置字段的分割符为字符串对象(string),默认值为"\t"。
- FIELDS ENCLOSED BY 'char':用来设置括上字段值的字符符号,默认情况下不使用任何符号。
- FIELDS OPTIONALLY ENCLOSED BY 'char':用来设置括上CHAR/VARCHAR/TEXT等字段值的字符符号,默认情况下不使用任何符号。
- FIELES ESCAPED BY 'char':用来设置转义字符的字符符号,默认情况下使用"\"字符。
- LINES STARING BY 'char':用来设置每行开头的字符符号,默认情况下不使用任何符号。
- LINES TERMINATED BY 'string':用来设置每行结束的字符串符号,默认情况下使用"\n"字符串。
2. mysqldump
mysqldump -u root -pPassword -T file_directory dbname table_name[OPTION];
OPTION 可以是下面4个值的任何一个。
- --fields-terminated-by=string:用来设置字段的分割符为字符串对象(string),默认值为"\t"。
- --fields-enclosed-by=char:用来设置括上字段值的字符符号,默认情况下不使用任何符号。
- --fields-optionally-enclosed-by=char:用来设置括上CHAR/VARCHAR/TEXT等字段值的字符符号,默认情况下不使用任何符号。
- --lines-terminated-by=string:用来设置每行结束的字符串符号,默认情况下使用"\n"字符串。
3. mysql
mysql -u root -pPassword -e "SELECT [file_name] FROM table_name" dbname>file_name;
MYSQL数据库学习十八 数据库维护和性能提高的更多相关文章
- MYSQL数据库学习十六 安全性机制
16.1 MYSQL数据库所提供的权限 16.1.1 系统表 mysql.user 1. 用户字段 Host:主机名: User:用户名: Password:密码. 2. 权限字段 以“_priv”字 ...
- MYSQL数据库学习十五 事务
15.1 事务概述 当多个用户访问同一份数据,一个用户在更改数据的过程中可能有其他用户同时发起更改请求,为保证数据库记录的更新从一个一致性状态变为另一个一致性状态,使用事务处理是非常必要的. 事务有以 ...
- MYSQL数据库学习十四 存储过程和函数的操作
14.1 为什么使用存储过程和函数 一个完整的操作会包含多条SQL语句,在执行过程中需要根据前面SQL语句的执行结果有选择的执行后面的SQL语句. 存储过程和函数的优点: 允许标准组件式编程,提高了S ...
- MYSQL数据库学习十二 使用MySQL运算符
12.1 算术运算符 + - * /(DIV) %(MOD) 12.2 比较运算符 > < = <=> != <> >= <= BETWEEN AND ...
- MYSQL数据库学习十 单表数据记录查询
10.1 简单数据记录查询 SELECT field1,field2,...fieldn FROM table_name; “*” ——查询所有记录 SELECT * FROM table_name; ...
- MySQL数据库学习笔记(十二)----开源工具DbUtils的使用(数据库的增删改查)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- MySQL数据库学习笔记(十)----JDBC事务处理、封装JDBC工具类
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- Mysql数据库学习笔记之数据库索引(index)
什么是索引: SQL索引有两种,聚集索引和非聚集索引,索引主要目的是提高了SQL Server系统的性能,加快数据的查询速度与减少系统的响应时间. 聚集索引:该索引中键值的逻辑顺序决定了表中相应行的物 ...
随机推荐
- Linux传统Huge Pages与Transparent Huge Pages再次学习总结
Linux下的大页分为两种类型:标准大页(Huge Pages)和透明大页(Transparent Huge Pages).Huge Pages有时候也翻译成大页/标准大页/传统大页,它们都是Hu ...
- 关于我上传的activiti自定义流程demo的说明
最近又收到了一些询问activiti的问题,其中好几个都是向我索要我上传的这个activiti自定义流程demo的数据库设计. 索要的多了,而我早就把这个库给删掉了,所以我便觉得有必要做一个说明: 我 ...
- NLP+词法系列(一)︱中文分词技术小结、几大分词引擎的介绍与比较
笔者想说:觉得英文与中文分词有很大的区别,毕竟中文的表达方式跟英语有很大区别,而且语言组合形式丰富,如果把国外的内容强行搬过来用,不一样是最好的.所以这边看到有几家大牛都在中文分词以及NLP上越走越远 ...
- 在windows XP系统下编译和使用ffmpeg
最近在做流媒体开发这一块,在服务器端,所用的live555不支持mp4,avi等视频容器格式,所以打算运用ffmpeg来进行扩展.将MP4文件先运用ffmpeg进行解析,解析成live555所支持的基 ...
- 小说接入UC浏览器内核技术对话(二)
质辛@灿岩 质辛跟我们说一下那个删除文件的逻辑吧质辛@灿岩 应该不是删除cache下所有文件吧?质辛质辛@智鹰 提供一下我们的临时文件完整路径给 灿岩吧质辛@智鹰 是负责我们ucsdk的 技术对 ...
- 基于LVDS/M-LVDS的数据通信
现在有两种方案:一种基于 M-LVDS (基于总线的多节点通信) ,有其 特定的电气要求:另外一种是基于 LVDS 的点到点通信,具体说明如 下: 基于 M-LVDS 的总线通信: 基于 M-LVDS ...
- vxWorks驱动架构
Vxworks内核驱动基本结构: 三张表:1. 系统设备表 2. 系统驱动表 3. 文件描述符表 Vxworks 内部对每个设备使用DEV_HDR 数据结构进行表示: Typedef str ...
- 获取对固定列不重复的新DataTable
获取对固定列不重复的新DataTable ///<summary> /// 获取对固定列不重复的新DataTable /// </summary> ///<param ...
- .Net利用Newtonsoft进行解析Json的快捷方法
现在异构系统之间的数据交换多采用Json格式 .Net如何快捷地解析Json和将Object转换成json呢? 1.利用Newtonsoft解析Json字符串 在百度上查找资料,利用Newtonsof ...
- python实现列表倒叙打印
def func(listNode): listNode.reverse() for i in listNode: print(i) li = [1,2,3,4,5] func(li) 利用pytho ...