仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 571|回复: 8
打印 上一主题 下一主题

[学习教程] MYSQL网页编程之MySQL数据库布局和数据的导出和导进

[复制链接]
因胸联盟 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:45:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
业界普遍的声音认为:“MySQL是一个可靠的数据库系统,MySQL学习教程无论是在嵌入式或大型群集系统的部署中,还是在基于Web的应用程序领域。mysql|数据|数据库|数据库布局任我行导出要用到MySQL的mysqldump工具,基础用法是:

shell>mysqldump[OPTIONS]database[tables]

假如你不给定任何表,全部数据库将被导出。

经由过程实行mysqldump--help,你能失掉你mysqldump的版本撑持的选项表。

注重,假如你运转mysqldump没有--quick或--opt选项,mysqldump将在导出了局前装载全部了局集到内存中,假如你正在导出一个年夜的数据库,这将多是一个成绩。

mysqldump撑持以下选项:

--add-locks
在每一个表导出之前增添LOCKTABLES而且以后UNLOCKTABLE。(为了使得更快地拔出到MySQL)。
--add-drop-table
在每一个create语句之前增添一个droptable。
--allow-keywords
同意创立是关头词的列名字。这由表名前缀于每一个列名做到。
-c,--complete-insert
利用完全的insert语句(用列名字)。
-C,--compress
假如客户和服务器均撑持紧缩,紧缩二者间一切的信息。
--delayed
用INSERTDELAYED命令拔出行。
-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选择一同利用,而且有响应的LOADDATAINFILE子句不异的寄义。
LOADDATAINFILE语法。
-F,--flush-logs
在入手下手导出前,洗失落在MySQL服务器中的日记文件。
-f,--force,
即便我们在一个表导出时代失掉一个SQL毛病,持续。
-h,--host=..
从定名的主机上的MySQL服务器导出数据。缺省主机是localhost。
-l,--lock-tables.
为入手下手导出锁定一切表。
-t,--no-create-info
不写进表创立信息(CREATETABLE语句)
-d,--no-data
不写进表的任何行信息。假如你只想失掉一个表的布局的导出,这是很有效的!
--opt
同--quick--add-drop-table--add-locks--extended-insert--lock-tables。
应当给你为读进一个MySQL服务器的尽量最快的导出。
-pyour_pass,--password[=your_pass]
与服务器毗连时利用的口令。假如你不指定“=your_pass”部分,mysqldump必要来自终真个口令。
-Pport_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文件,它包括SQLCREATE命令,和一个table_name.txt文件,它包括数据。注重:这只要在mysqldump运转在mysqld保卫历程运转的统一台呆板上的时分才事情。.txt文件的格局依据--fields-xxx和--lines--xxx选项来定。
-uuser_name,--user=user_name
与服务器毗连时,MySQL利用的用户名。缺省值是你的Unix登录名。
-Ovar=option,--set-variablevar=option设置一个变量的值。大概的变量被列鄙人面。
-v,--verbose
冗杂形式。打印出程序所做的更多的信息。
-V,--version
打印版本信息而且加入。
-w,--where=where-condition
只导出被选择了的纪录;注重引号是强迫的!
"--where=user=jimf""-wuserid>1""-wuserid<1"

最多见的mysqldump利用大概制造全部数据库的一个备份:

mysqldump--optdatabase>backup-file.sql

可是它对用来自于一个数据库的信息充分别的一个MySQL数据库也是有效的:

mysqldump--optdatabase|mysql--host=remote-host-Cdatabase

因为mysqldump导出的是完全的SQL语句,以是用mysql客户程序很简单就可以把数据导进了:

shell>mysqladmincreatetarget_db_name
shell>mysqltarget_db_name<backup-file.sql
你不用花费很多时间和金钱来培训现有的职工,或者去花大价钱雇用那些拥有各种证书的开发者。因为MySQL的维护和管理在很大程度上是“傻瓜型”的。
精灵巫婆 该用户已被删除
沙发
发表于 2015-1-19 22:28:47 来自手机 | 只看该作者
还不是性能有问题!否则面向对象的数据库早就实现了!建议使用CLR的地方一般是和应用的复杂程度或操作系统环境有很高的耦合度的场景。如你想构建复杂的算法,并且用到了大量的指针和高级数据模型。
只想知道 该用户已被删除
板凳
发表于 2015-1-25 18:28:06 | 只看该作者
但换公司用MSSQL2K感觉自己好像根本就不了解MSSQL。什么DTS触发器以前根本没用过。
乐观 该用户已被删除
地板
发表于 2015-2-3 12:48:45 | 只看该作者
以前的DTS轻盈简单。但是现在的SSIS虽然功能强大了很多,但是总是让人感觉太麻烦。看看论坛中询问SSIS的贴子就知道。做的功能太强大了,往往会有很多用户不会用了
蒙在股里 该用户已被删除
5#
发表于 2015-2-9 01:34:22 | 只看该作者
大侠们有推荐的书籍和学习方法写下吧。
若相依 该用户已被删除
6#
发表于 2015-2-26 17:12:40 | 只看该作者
这是一个不错的新特性。虽然索引的附加字段没有索引键值效率高,但是相对映射到数据表中效率还是提高了很多。我做过试验,在我的实验环境中会比映射到表中提高30%左右的效率。
变相怪杰 该用户已被删除
7#
发表于 2015-3-8 16:21:44 | 只看该作者
只能告诉你,学好数据库语言和原理,多见识几种数据库软件,比一棵树上吊死要好。
小魔女 该用户已被删除
8#
发表于 2015-3-16 04:55:31 | 只看该作者
发几份SQL课件,以飨阅者
简单生活 该用户已被删除
9#
发表于 2015-3-22 20:11:22 | 只看该作者
Mirror可以算是SQLServer的Dataguard了。但是能不能被大伙用起来就不知道了。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-15 03:37

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表