导出要用到MySQL的mysqldump工具,基本用法是:
mysqldump [OPTIONS] database [tables]
如果你不给定任何表,整个数据库将被导出。
通过执行mysqldump --help,你能得到你mysqldump的版本支持的选项表。
注意,如果你运行mysqldump没有--quick或--opt选项,mysqldump将在导出结果前装载整个结果集到内存中,如果你正在导出一个大的数据库,这将可能是一个问题。
mysqldump支持下列选项:
--add-locks
在每个表导出之前增加LOCK TABLES并且之后UNLOCK TABLE。(为了使得更快地插入到MySQL)。
--add-drop-table
在每个create语句之前增加一个drop table。
--allow-keywords
允许创建是关键词的列名字。这由在列名前面加表名的方法做到。
-c, --complete-insert
使用完整的insert语句(用列名字)。
-C, --compress
如果客户和服务器均支持压缩,压缩两者间所有的信息。
--delayed
用INSERT DELAYED命令插入行。
-e, --extended-insert
使用全新多行INSERT语法。(给出更紧缩并且更快的插入语句)
-#, --debug[=option_string]
跟踪程序的使用(为了调试)。
--help
显示一条帮助消息并且退出。
--fields-terminated-by=...
--fields-enclosed-by=...
--fields-optionally-enclosed-by=...
--fields-escaped-by=...
--fields-terminated-by=...
这些选择与-T选择一起使用,并且有相应的LOAD DATA INFILE子句相同的含义。
LOAD DATA INFILE语法。
-F, --flush-logs
在开始导出前,洗掉在MySQL服务器中的日志文件。
-f, --force,
即使我们在一个表导出期间得到一个SQL错误,继续。
-h, --host=..
从命名的主机上的MySQL服务器导出数据。缺省主机是localhost。
-l, --lock-tables.
为开始导出锁定所有表。
-t, --no-create-info
不写入表创建信息(CREATE TABLE语句)
-d, --no-data
不写入表的任何行信息。如果你只想得到一个表的结构的导出,这是很有用的!
--opt
同--quick --add-drop-table --add-locks --extended-insert --lock-tables。
应该给你为读入一个MySQL服务器的尽可能最快的导出。
-pyour_pass, --password[=your_pass]
与服务器连接时使用的口令。如果你不指定“=your_pass”部分,mysqldump需要来自终端的口令。
-P port_num, --port=port_num
与一台主机连接时使用的TCP/IP端口号。(这用于连接到localhost以外的主机,因为它使用 Unix套接字。)
-q, --quick
不缓冲查询,直接导出至stdout;使用mysql_use_result()做它。
-S /path/to/socket, --socket=/path/to/socket
与localhost连接时(它是缺省主机)使用的套接字文件。
-T, --tab=path-to-some-directory
对于每个给定的表,创建一个table_name.sql文件,它包含SQL CREATE 命令,和一个table_name.txt文件,它包含数据。 注意:这只有在mysqldump运行在mysqld守护进程运行的同一台机器上的时候才工作。.txt文件的格式根据--fields-xxx和--lines--xxx选项来定。
-u user_name, --user=user_name
与服务器连接时,MySQL使用的用户名。缺省值是你的Unix登录名。
-O var=option, --set-variable var=option
设置一个变量的值。可能的变量被列在下面。
-v, --verbose
冗长模式。打印出程序所做的更多的信息。
-V, --version
打印版本信息并且退出。
-w, --where='where-condition'
只导出被选择了的记录;注意引号是强制的!
"--where=user='jimf'" "-wuserid>1" "-wuserid<1"
最常见的mysqldump使用可能制作整个数据库的一个备份:
mysqldump --opt database >backup-file.sql
但是它对用来自于一个数据库的信息充实另外一个MySQL数据库也是有用的:
mysqldump --opt database | mysql --host=remote-host -C database
由于mysqldump导出的是完整的SQL语句,所以用mysql客户程序很容易就能把数据导入了:
mysqladmin create target_db_name
mysql target_db_name <backup-file.sql
使用工具的话更方便,根本不需要写命令,export to sql
前提是把MYSQL的安装路径\bin添加到系统环境变量PATH中了。备份:mysqldump
-u
root
-p123456
kcgl>
c:\20090219.sql
mysqldump
备份命令
root
用户名(root管理员)
123456
密码
kcgl
备份的数据库名
>
备份符号
20090219.sql
备份的文件名
还原:
mysql
-u
root
-p123456
kcgl<
c:\20090219.sql
mysql
还原命令
root
用户名(root管理员)
123456
密码
dbcurr
备份的数据库名
<
还原符号
20090219.sql还原的文件名
注意:首先要确保你的mysql
中有kcgl这个库,还原命令是不会自动建库的。
mysqldump
远程备份
mysqldump
-h
ip
-uroot
-proot
database
>
c:\data.sql
---------其他---------
mysqldump备份:
mysqldump
-u用户名
-p密码
-h主机
数据库
a
-w
"sql条件"
--lock-all-tables
>
路径
案例:
mysqldump
-uroot
-p1234
-hlocalhost
db1
a
-w
"id
in
(select
id
from
b)"
--lock-all-tables
>
c:\aa.txt
mysqldump还原:
mysqldump
-u用户名
-p密码
-h主机
数据库
<
路径
案例:
mysql
-uroot
-p1234
db1
<
c:\aa.txt
mysqldump按条件导出:
mysqldump
-u用户名
-p密码
-h主机
数据库
a
--where
"条件语句"
--no-建表>
路径
mysqldump
-uroot
-p1234
dbname
a
--where
"tag='88'"
--no-create-info>
c:\a.sql
mysqldump按导入:
mysqldump
-u用户名
-p密码
-h主机
数据库
<
路径
案例:
mysql
-uroot
-p1234
db1
<
c:\a.txt
mysqldump导出表:
mysqldump
-u用户名
-p密码
-h主机
数据库
表
案例:
mysqldump
-uroot
-p
sqlhk9
a
--no-data
-------------------------------------------------
mysqldump命令介绍
--all-databases,
-A:
备份所有数据库
--databases,
-B:
用于备份多个数据库,如果没有该选项,mysql
dump
把第一个名字参数作为数据库名,后面的作为表名。使用该选项,mysql
dum把每个名字都当作为数据库名。
--force,
-f:即使发现sql错误,仍然继续备份
--host=host_name,
-h
host_name:备份主机名,默认为localhost
--no-data,
-d:只导出表结构
--password[=password],
-p[password]:密码
--port=port_num,
-P
port_num:制定TCP/IP连接时的端口号
--quick,
-q:快速导出
--tables:覆盖
--databases
or
-B选项,后面所跟参数被视作表名
--user=user_name,
-u
user_name:用户名
--xml,
-X:导出为xml文件
1.备份全部数据库的数据和结构
mysql
dump
-uroot
-p123456
-A
>F:\all.sql
2.备份全部数据库的结构(加
-d
参数)
mysql
dump
-uroot
-p123456
-A
-d>F:\all_struct.sql
3.备份全部数据库的数据(加
-t
参数)
mysql
dump
-uroot
-p123456
-A
-t>F:\all_data.sql
4.备份单个数据库的数据和结构(,数据库名mydb)
mysql
dump
-uroot
-p123456
mydb>F:\mydb.sql
5.备份单个数据库的结构
mysql
dump
-uroot
-p123456
mydb
-d>F:\mydb.sql
6.备份单个数据库的数据
mysql
dump
-uroot
-p123456
mydb
-t>F:\mydb.sql
7.备份多个表的数据和结构(数据,结构的单独备份方法与上同)
mysql
dump
-uroot
-p123456
mydb
t1
t2
>f:\multables.sql
8.一次备份多个数据库
mysql
dump
-uroot
-p123456
--databases
db1
db2
>f:\muldbs.sql
还原部分分(1)mysql
命令行source方法
和
(2)系统命令行方法
1.还原全部数据库:
(1)
mysql
命令行:mysql
>source
f:\all.sql
(2)
系统命令行:
mysql
-uroot
-p123456
use
mydb
mysql
>source
f:\mydb.sql
(2)
mysql
-uroot
-p123456
mydb
use
mydb
mysql
>source
f:\multables.sql
(2)
mysql
-uroot
-p123456
mydb
source
f:\muldbs.sql
(2)
系统命令行:
mysql
-uroot
-p123456
评论
0
0
加载更多
MySQL Administrator备份与还原数据库,随着PHP技术的逐步发展,MySQL数据库的使用率也成上升趋势。可MySQL数据库的实际 *** 作一般都是基于命令行的,而没有像微软MSSQL数据库的企业管理器这样的GUI可视图形化工具 *** 作来的容易方便。一般的情况下,我们可以使用 PHPMYADMIN 这样的PHP脚本工具来 *** 作 MySQL 数据库,可 PHPMYADMIN 也不是GUI工具。
为了更方便地 *** 作 MySQL 数据库,飘易今天就给大家介绍一款管理 MySQL 的可视化图形工具 :MySQL Administrator 。这是一款和管理MSSQL的企业管理器一样方便的本地 *** 作 MySQL 的有效工具。
很重要的是,MySQL Administrator不会出现像使用 SQLyog (同样是管理MySQL的GUI工具)时经常会遇到的 中文乱码 问题,要知道中文网站数据库使用不当的话都会出现中文乱码的问题。
所以,我们使用 MySQL Administrator工具,就有效地避免出现中文乱码的问题了。飘易手里头使用的是 MySQL Administrator 5.0 r16 这个版本。原始的官方网址选择Windows (x86) 下载,目前最新版本是 5.0-r17 ,大约17MB。
利用这个软件备份MySQL数据库,还原MySQL数据库,管理MySQL将变得十分简单易行,就像使用 MSSQL的企业管理器一样方便。
一,登陆,填写数据库IP,用户名和密码
二,登陆成功后,显示以下信息:
三,查看已经存在的数据库
选择“Catalogs”将列出数据库。点左下脚数据库列表中你开通的“数据库名”,右边将显示出数据库中已经存在的数据库表,如果是新数据库,右边是空的。
四,备份数据库到本地计算机硬盘
备份数据库到本地计算机硬盘,选择“Backup”备份数据库功能,然后点击“New Project” 建立新的备份项目。选择要备份的数据库,然后点 >号,右边将显示出数据库表结构。
备份选项:
点“Advanced Options” 高级选项 ,选择“Normal backup” 备份的时候选择正常备份 ,选择“Complete backup” 选择完整备份 ,也可以选择 “InnoDB Online Backup”,这是一种在线简单的备份方式;Backup Type 备份方式选择 SQL Files ,点“Execute Backup Now”立刻开始备份数据库。
五,选择“Restore”还原数据库功能
点“Open Backup File”,找到以前备份的数据库脚本文件,选择并打开文件,点“Start Restore” 后开始还原,还原成功。
这里在还原的时候需要注意的有两点:1,“Target Schema”默认数据库项这里,如果你没有MySQL服务器root权限,比如你是虚拟主机分配的一个子账户,此时你必须选择“another schema”里的数据库名,而不能选择“original schema”选项,否则还原失败出错; 2,“FILE CHARSET”选项默认 utf8,请不要更改,否则也会出现中文乱码问题。
MySQL Administrator 不仅可以备份、还原MySQL数据库,同样也可以对MySQL进行方便地维护和管理,比如修改增加字段等。另外,这里还有一篇 如何使用 MySQL Administrator 管理/备份/还原 My SQL 数据库 的文章,大家也可以看看。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)