MYSQL数据库学习十八 数据库维护和性能提高
2015-07-06 11:48
591 查看
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;
相关文章推荐
- SQL Server 分组取 Top 笔记(row_number + over 实现)
- Cacti监控mysql数据库服务器实现过程
- 如何监控MYSQL消耗服务器资源
- 详解 Spotlight on MySQL监控MySQL服务器
- 对正在运行的mysql进行监控
- 【mysql监控】查看mysql库大小,表大小,索引大小
- Windows下Mysql5.6启用监控执行脚本的日志
- 实时监控MySql状态
- 实时监控mysql数据库变化
- CentOS+nginx+Django+Postgresql web环境搭建
- golang自定义数据类型查询与插入postgresql中point数据
- 关于SQL Server监控与优化
- MySQL-Cluster架构图文详解
- SQL Server 2008 R2 安装出错:Could not open key
- PL/SQL developer配置方法
- SQL2008代理作业出现错误: c001f011维护计划创建失败的解决方法
- Oracle SQL Developer更改DATE日期的显示格式
- CRITICAL keystone [-] OperationalError: (OperationalError) (2003, "Can't connect to MySQL server on
- 关于PL/SQL Developer 中文乱码的解决
- beego框架之orm模块——PostgreSQL