Mysql备份恢复相关
来源:互联网 发布:淘宝飞猪客服电话 编辑:程序博客网 时间:2024/06/07 15:22
LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'file_name.txt'
[REPLACE | IGNORE]
INTO TABLE tbl_name
[FIELDS
[TERMINATED BY 'string']
[[OPTIONALLY] ENCLOSED BY 'char']
[ESCAPED BY 'char' ]
]
[LINES
[STARTING BY 'string']
[TERMINATED BY 'string']
]
[IGNORE number LINES]
[(col_name_or_user_var,...)]
[SET col_name = expr,...)]
[LOW_PRIORITY | CONCURRENT]
-与同时运行优先级相关,暂不考虑,insert语句也有类似选项[LOW_PRIORITY | DELAYED | HIGH_PRIORITY]
[LOCAL]
-指定后从客户端本地上传文件,可用绝对路径和相对路径,相对路径被理解为相对于启动客户端时所在的目录,一般为C:\Users\Administrator
-没有指定时,在主机端寻找文件,可用绝对路径和相对路径,当使用相对路径时理解为数据库文件夹所在目录,但要区分'./file_name.txt'和'file_name.txt'区别
[REPLACE | IGNORE]
-针对插入时出现重复唯一索引时起效,replace替换,ignore跳过
-insert语句中也有ignore选项,用于出现重复唯一索引或错误值,另[ ON DUPLICATE KEY UPDATE col_name=expr, ... ]子句用于更新原索引
[FIELDS
[TERMINATED BY 'string']-两个字段间用什么字符分隔/默认\t
[[OPTIONALLY]-用于字符数据,数值数据不起效 ENCLOSED BY 'char']-一个字段用成对的字符分隔\默认空
[ESCAPED BY 'char' ]-转义字符\默认反斜杠,用'\\'表示
]
[LINES
[STARTING BY 'string']-记录行从什么字符开始/默认空
[TERMINATED BY 'string']-记录行间用什么字符分隔/默认\n
]
[IGNORE number LINES]
-指定number用于从开始跳过number行开始导入
[(col_name_or_user_var,...)]
-用于指定导入字段列表,可以使用变量然后被下面的子句导入
[SET col_name = expr,...)]
-指定单个字段值
1、windows文件分隔行时应使用\r\n
2、当数据库为utf8时,导入的文件类型也应该是utf8,但是某些utf8文件会在文件头多出3个引导字节,这造成用load data infile导入时首记录的首字段出现错误,使用character_set_database用于解释导入文件的编码方式,设置character_set_database=gbk导入ascii文件,即使数据库是utf8编码也可以正常导入,这可以有效解决utf8文件导入问题
3、如果把终止符设置为'',在此情况下,文本文件必须包含每行的所有字段。
4、如果LINES TERMINATED BY是空字符串,并且FIELDS TERMINATED BY不是空字符串,则各行以FIELDS TERMINATED BY作为结尾。
-*****-
SELECT col_name FROM table_name INTO OUTFILE 'file_name'
SELECT col_name INTO OUTFILE FROM table_name
-两种方式均可
-作为与load data infile配套使用,其fileds和lines选项必须完全匹配
-如果用INTO DUMPFILE代替INTO OUTFILE,则只把一行写入到文件中,不对任何列或行进行终止,也不执行任何转义处理
-file_name如果为相对路径则被理解为相对于启动客户端时所在的目录,一般为E:\wamp\bin\mysql\mysql5.5.20\data\所在数据库名
将标准控制台输出变成文件输出
-mysql -uroot -e "Sql语句" > outfile;
-mysql -uroot < slqfile > outfile;
-上面2种方式均可,文件路径默认为启动mysql路径,一般为C:\Users\Administration\Desktop\
-*****-
数据库备份程序mysqldump
shell> mysqldump [options] db_name [tables] > file_name
-备份数据表,如果不指定表则备份全部数据表,备份语句中不包括数据库的创建,那么的恢复的时候必须首先创建并use数据库
shell> mysqldump [options] --database DB1 [DB2 DB3...] > file_name
shell> mysqldump [options] --all-database > file_name
-备份数据库,如果不指表则备份全部数据表,备份语句中不包括数据库的创建
1、mysqldump需用主机地址/用户名/密码等必要信息
2、file_name如果为相对路径则被理解为启动客户端时所在的路径,一般为C:\Users\Administrator
3、[options]可选项目较多,暂了解如下
-[--no-data]仅备份表结构
-[--add-drop-database]备份时加入删除数据库语句,防止同名数据库存在时影响数据库恢复
-[-add-drop-table]同上
4、[--add-drop-database] [-add-drop-table]有默认选项,在使用时最好用mysqldump -?查看变量值,需要改变时[-add-drop-table=false]等号两边不能有空格
[REPLACE | IGNORE]
INTO TABLE tbl_name
[FIELDS
[TERMINATED BY 'string']
[[OPTIONALLY] ENCLOSED BY 'char']
[ESCAPED BY 'char' ]
]
[LINES
[STARTING BY 'string']
[TERMINATED BY 'string']
]
[IGNORE number LINES]
[(col_name_or_user_var,...)]
[SET col_name = expr,...)]
[LOW_PRIORITY | CONCURRENT]
-与同时运行优先级相关,暂不考虑,insert语句也有类似选项[LOW_PRIORITY | DELAYED | HIGH_PRIORITY]
[LOCAL]
-指定后从客户端本地上传文件,可用绝对路径和相对路径,相对路径被理解为相对于启动客户端时所在的目录,一般为C:\Users\Administrator
-没有指定时,在主机端寻找文件,可用绝对路径和相对路径,当使用相对路径时理解为数据库文件夹所在目录,但要区分'./file_name.txt'和'file_name.txt'区别
[REPLACE | IGNORE]
-针对插入时出现重复唯一索引时起效,replace替换,ignore跳过
-insert语句中也有ignore选项,用于出现重复唯一索引或错误值,另[ ON DUPLICATE KEY UPDATE col_name=expr, ... ]子句用于更新原索引
[FIELDS
[TERMINATED BY 'string']-两个字段间用什么字符分隔/默认\t
[[OPTIONALLY]-用于字符数据,数值数据不起效 ENCLOSED BY 'char']-一个字段用成对的字符分隔\默认空
[ESCAPED BY 'char' ]-转义字符\默认反斜杠,用'\\'表示
]
[LINES
[STARTING BY 'string']-记录行从什么字符开始/默认空
[TERMINATED BY 'string']-记录行间用什么字符分隔/默认\n
]
[IGNORE number LINES]
-指定number用于从开始跳过number行开始导入
[(col_name_or_user_var,...)]
-用于指定导入字段列表,可以使用变量然后被下面的子句导入
[SET col_name = expr,...)]
-指定单个字段值
1、windows文件分隔行时应使用\r\n
2、当数据库为utf8时,导入的文件类型也应该是utf8,但是某些utf8文件会在文件头多出3个引导字节,这造成用load data infile导入时首记录的首字段出现错误,使用character_set_database用于解释导入文件的编码方式,设置character_set_database=gbk导入ascii文件,即使数据库是utf8编码也可以正常导入,这可以有效解决utf8文件导入问题
3、如果把终止符设置为'',在此情况下,文本文件必须包含每行的所有字段。
4、如果LINES TERMINATED BY是空字符串,并且FIELDS TERMINATED BY不是空字符串,则各行以FIELDS TERMINATED BY作为结尾。
-*****-
SELECT col_name FROM table_name INTO OUTFILE 'file_name'
SELECT col_name INTO OUTFILE FROM table_name
-两种方式均可
-作为与load data infile配套使用,其fileds和lines选项必须完全匹配
-如果用INTO DUMPFILE代替INTO OUTFILE,则只把一行写入到文件中,不对任何列或行进行终止,也不执行任何转义处理
-file_name如果为相对路径则被理解为相对于启动客户端时所在的目录,一般为E:\wamp\bin\mysql\mysql5.5.20\data\所在数据库名
将标准控制台输出变成文件输出
-mysql -uroot -e "Sql语句" > outfile;
-mysql -uroot < slqfile > outfile;
-上面2种方式均可,文件路径默认为启动mysql路径,一般为C:\Users\Administration\Desktop\
-*****-
数据库备份程序mysqldump
shell> mysqldump [options] db_name [tables] > file_name
-备份数据表,如果不指定表则备份全部数据表,备份语句中不包括数据库的创建,那么的恢复的时候必须首先创建并use数据库
shell> mysqldump [options] --database DB1 [DB2 DB3...] > file_name
shell> mysqldump [options] --all-database > file_name
-备份数据库,如果不指表则备份全部数据表,备份语句中不包括数据库的创建
1、mysqldump需用主机地址/用户名/密码等必要信息
2、file_name如果为相对路径则被理解为启动客户端时所在的路径,一般为C:\Users\Administrator
3、[options]可选项目较多,暂了解如下
-[--no-data]仅备份表结构
-[--add-drop-database]备份时加入删除数据库语句,防止同名数据库存在时影响数据库恢复
-[-add-drop-table]同上
4、[--add-drop-database] [-add-drop-table]有默认选项,在使用时最好用mysqldump -?查看变量值,需要改变时[-add-drop-table=false]等号两边不能有空格
5、以上参数中短横线-及其数量要精确匹配
聚石塔使用bat:
set yy=%date:~0,4%
set mm=%date:~5,2%
set dd=%date:~8,2%
set hh=%time:~0,2%
set mn=%time:~3,2%
if /i %hh% LSS 10 (set hh=0%time:~1,1%)
d:
cd wamp
cd bin
cd mysql
cd mysql5.5.20
cd bin
mysqldump -hlocalhost -uroot --add-drop-database --database a0109202126 > d:\wamp\sql\%yy%%mm%%dd%-%hh%.%mn%.sql
0 0
- Mysql备份恢复相关
- MYSQL数据备份与恢复的相关操作命令
- Mysql 备份恢复备份和恢复类型
- MySQL备份与恢复
- Mysql 备份与恢复
- MySQL 备份和恢复
- MySQL备份和恢复
- MySQL 备份和恢复
- mysql 数据库备份恢复
- MySQL 备份和恢复
- MySQL 备份和恢复
- MySQL 备份和恢复
- MySQL备份和恢复
- MySQL备份和恢复
- MySQL 备份和恢复
- MySQL 备份和恢复
- MySQL 备份和恢复
- MySQL 备份和恢复
- 3sum closet
- 研磨设计模式之简单工厂模式(模式讲解)
- hello.c内核模块编译 -- linux内核
- 【BZOJ】【P1532】【POI2005】【Kos-Dicing】【二分+最大流】
- C和C++中存储区域详解(栈、堆、全局...)
- Mysql备份恢复相关
- Xcode如何管理工程?就是分好几个文件夹,分类管理,可是原文件目录还是一大堆
- iOS UUID配合keychain的替换方案实现 - Herooic
- VS不能设置断点
- 53个要点提高PHP编程效率.
- Android Native Signal机制
- 重定向编程 dup和dup2函数
- Winform简单的增删改
- Python宝典第四章:可复用的函数与模块