问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何用MySQL命令对数据库进行导出/导入/技巧

发布网友 发布时间:2022-04-20 13:10

我来回答

1个回答

热心网友 时间:2022-04-07 16:43

info:
1.txt
zhangsan wuhan
lishi wuhan
把1.txt文件插入到mysql数据库中

1.mysql -u root -p 数据库名 </文件路径(在bin下就直接加文件名)
2.mysqlimport的语法介绍:
mysqlimport位于mysql/bin目录中,是mysql的一个载入(或者说导入)数据的一个非常有效的工具。这是一个命令行工具。有两个参数以及大量的选项可供选择。这个工具把一个文本文件(text file)导入到你指定的数据库和表中。比方说我们要从文件Customers.txt中把数据导入到数据库Meet_A_Geek中的表 Custermers中:
mysqlimport Meet_A_Geek Customers.txt
注意:这里Customers.txt是我们要导入数据的文本文件,而Meet_A_Geek是我们要操作的数据库,数据库中的表名是Customers,这里文本文件的数据格式必须与Customers表中的记录格式一致,否则mysqlimport命令将会出错。
其中表的名字是导入文件的第一个句号(.)前面文件字符串,另外一个例子:
mysqlimport Meet_A_Geek Cus.to.mers.txt
那么我们将把文件中的内容导入到数据库Meet_A_Geek 中的Cus表中。上面的例子中,都只用到两个参数,并没有用到更多的选项,下面介绍mysqlimport的选项:
选项 功能
-d or --delete 新数据导入数据表中之前删除数据数据表中的所有信息
-f or --force 不管是否遇到错误,mysqlimport将强制继续插入数据
-i or --ignore mysqlimport跳过或者忽略那些有相同唯一关键字的行, 导入文件中的数据将被忽略。
-l or -lock-tables 数据被插入之前锁住表,这样就防止了,你在更新数据库时,用户的查询和更新受到影响。
-r or -replace 这个选项与-i选项的作用相反;此选项将替代表中有相同唯一关键字的记录。
--fields-enclosed- by= char 指定文本文件中数据的记录时以什么括起的, 很多情况下数据以双引号括起。 默认的情况下数据是没有被字符括起的。
--fields-terminated- by=char 指定各个数据的值之间的分隔符,在句号分隔的文件中,分隔符是句号。您可以用此选项指定数据之间的分隔符。默认的分隔符是跳格符(Tab)
--lines-terminated- by=str 此选项指定文本文件中行与行之间数据的分隔字符串或者字符。 默认的情况下mysqlimport以newline为行分隔符。您可以选择用一个字符串来替代一个单个的字符:一个新行或者一个回车。
mysqlimport命令常用的选项还有-v 显示版本(version), -p 提示输入密码(password)等。
例子:导入一个以逗号为分隔符的文件文件中行的记录格式是这样的:
"1", "ORD89876", "1 Dozen Roses", "19991226"
我们的任务是要把这个文件里面的数据导入到数据库Meet_A_Geek中的表格Orders中,我们使用这个命令:
bin/mysqlimport –prl –fields-enclosed-by=" –fields-terminated-by=, Meet_A_Geek Orders.txt
3.mysql数据库常用导出导入命令的几个用例
================================
几个常用用例:
1.导出整个数据库
mysqlmp -u 用户名 -p 数据库名 > 导出的文件名
mysqlmp -u wcnc -p smgp_apps_wcnc > wcnc.sql
2.导出一个表
mysqlmp -u 用户名 -p 数据库名 表名> 导出的文件名
mysqlmp -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql
3.导出一个数据库结构
mysqlmp -u wcnc -p -d --add-drop-table smgp_apps_wcnc >d:\wcnc_db.sql
-d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table
4.导入数据库
常用source 命令
进入mysql数据库控制台,
如mysql -u root -p
mysql>use 数据库
然后使用source命令,后面参数为脚本文件(如这里用到的.sql)
mysql>source d:\wcnc_db.sql
4.可参看 MySQL数据的导出和导入工具:mysqlmp
====================================
批处理是一种非交互式运行mysql程序的方法,如同您在mysql中使用的命令一样,你仍然将使用这些命令。为了实现批处理,您重定向一个文件到 mysql程序中,首先我们需要一个文本文件,这个文本文件包含有与我们在mysql中输入的命令相同的文本。比如我们要插入一些数据,使用包含下面文本的文件(文件名为New_Data.sql,当然我们也可以取名为New_Data.txt及任何其他的合法名字,并不一定要以后缀sql结尾):
USE Meet_A_Geek;
INSERT INTO Customers (Customer_ID, Last_Name) VALUES(NULL, "Block");
INSERT INTO Customers (Customer_ID, Last_Name) VALUES(NULL, "Newton");
INSERT INTO Customers (Customer_ID, Last_Name) VALUES(NULL, "Simmons");
注意上面的这些句子的语法都必须是正确的,并且每个句子以分号结束。上面的USE命令选择数据库,INSERT命令插入数据。
下面我们要把上面的文件导入到数据库中,导入之前要确认数据库已经在运行,即是mysqld进程(或者说服务,Windows NT下面称为”服务“,unix下面为”进程“)已经在运行。然后运行下面的命令:
bin/mysql –p < /home/mark/New_Data.sql
接着按提示输入密码,如果上面的文件中的语句没有错误,那么这些数据就被导入到了数据库中。
命令行中使用LOAD DATA INFILE 从文件中导入数据到数据库:
现在您可能会问自己,"究竟为什么我要输入所有的这些SQL语句到文件中,然后通过程序运行它们呢?”这样看起来好像需要大量的工作。很好,你这样想很可能就对了。但是假如你有从所有这些命令中产生的log记录呢?现在这样就很棒,嗯,大多数数据库都会自动产生数据库中的事件记录的log。而大部分log 都包含有用过的原始的SQL命令。因此,如果您不能从您现在的数据库中导出数据到新的mysql数据库中使用,那么您可以使用log和mysql的批处理特性,来快速且方便地导入您地数据。当然,这样就省去了打字的麻烦。
LOAD DATA INFILE
这是我们要介绍的最后一个导入数据到MySQL数据库中的方法。这个命令与mysqlimport非常相似,但这个方法可以在mysql命令行中使用。也就是说您可以在所有使用API的程序中使用这个命令。使用这种方法,您就可以在应用程序中导入您想要导入的数据。
使用这个命令之前,mysqld进程(服务)必须已经在运行。启动mysql命令行:
bin/mysql –p
按提示输入密码,成功进入mysql命令行之后,输入下面的命令:
USE Meet_A_Geek;
LOAD DATA INFILE "/home/mark/data.sql" INTO TABLE Orders;
简单的讲,这样将会把文件data.sql中的内容导入到表Orders中,如mysqlimport工具一样,这个命令也有一些可以选择的参数。比如您需要把自己的电脑上的数据导入到远程的数据库服务器中,您可以使用下面的命令:
LOAD DATA LOCAL INFILE "C:\MyDocs\SQL.txt" INTO TABLE Orders;
上面的LOCAL参数表示文件是本地的文件,服务器是您所登陆的服务器。这样就省去了使用ftp来上传文件到服务器,MySQL替你完成了.
您也可以设置插入语句的优先级,如果您要把它标记为低优先级(LOW_PRIORITY),那么MySQL将会等到没有其他人读这个表的时候,才把插入数据。可以使用如下的命令:
LOAD DATA LOW_PRIORITY INFILE "/home/mark/data.sql" INTO TABLE Orders;
您也可以指定是否在插入数据的时候,取代或者忽略文件与数据表中重复的键值。替代重复的键值的语法:
LOAD DATA LOW_PRIORITY INFILE "/home/mark/data.sql" REPLACE INTO TABLE Orders;
上面的句子看起来有点笨拙,但却把关键字放在了让您的剖析器可以理解的地方。
下面的一对选项描述了文件的记录格式,这些选项也是在mysqlimport工具中可以用的。他们在这里看起来有点不同。首先,要用到FIELDS关键字,如果用到这个关键字,MySQL剖析器希望看到至少有下面的一个选项:
TERMINATED BY character
ENCLOSED BY character
ESCAPED BY character
这些关键字与它们的参数跟mysqlimport中的用法是一样的. The
TERMINATED BY 描述字段的分隔符,默认情况下是tab字符(\t)
ENCLOSED BY描述的是字段的括起字符。比方以引号括起每一个字段。
ESCAPED BY 描述的转义字符。默认的是反些杠(backslash:\ ).
下面仍然使用前面的mysqlimport命令的例子,用LOAD DATA INFILE语句把同样的文件导入到数据库中:
LOAD DATA INFILE "/home/mark/Orders.txt" REPLACE INTO TABLE Orders FIELDS TERMINATED BY ','
ENCLOSED BY '"';
LOAD DATA INFILE语句中有一个mysqlimport工具中没有特点:LOAD DATA INFILE 可以按指定的列把文件导入到数据库中。
当我们要把数据的一部分内容导入的时候,这个特点就很重要。比方说,我们要从Access数据库升级到MySQL数据库的时候,需要加入一些栏目(列/字段 /field)到MySQL数据库中,以适应一些额外的需要。这个时候,我们的Access数据库中的数据仍然是可用的,但是因为这些数据的栏目 (field)与MySQL中的不再匹配,因此而无法再使用mysqlimport工具。尽管如此,我们仍然可以使用LOAD DATA INFILE,下面的例子显示了如何向指定的栏目(field)中导入数据:
LOAD DATA INFILE "/home/Order.txt" INTO TABLE Orders(Order_Number, Order_Date, Customer_ID);
如您所见,我们可以指定需要的栏目(fields)。这些指定的字段依然是以括号括起,由逗号分隔的,如果您遗漏了其中任何一个,MySQL将会提醒您^_^ 。
导入导出备份MySQL数据库命令行

导出数据库:mysqldump -u 用户名 -p 数据库名 导出的文件名如我输入的命令行:mysqldump -u root -p ygeshop ygeshop.sql (输入后会让你输入进入MySQL的密码)(如果导出单张表的话在数据库名后面输入表名即可)会看到文件ygeshop.sql自动生成到bin文件下命令行导入数据库:

如何导出和导入mysql数据(数据迁移)

1、先使用命令mysql -uroot -p登陆mysql服务器2、然后执行相关命令导入数据。mysql&gt;usedbtest;//设置当前要导入数据的dbtest数据库mysql&gt;setnamesutf8;//设置编码mysql&gt;sourceD:\db.sql;//导入数据ok,完成。当然数据库备份用Mysql Administrator是非常方便的Mysql导出表结构及表数据 mysqldump用法 命令行...

mysql中如何导出数据库mysql中如何导出数据库文件

1、打开命令行,在命令行里输入mysql,然后按回车就可以打开mysql的命令了。要注意的是区分大小写,不能输入Mysql。2、进入命令后,可以使用use命令来转到我们要查看的数据库。3、切换了数据库后,我们就可以查看这个数据库的表数据了。通过select语句就可以查询表数据了,但要注意的是每条语句要以分号结...

MySQL数据库如何导入导出(备份还原)_MySQL

一、数据库的导入(还原)1、source命令1)打开开始菜单-&gt;程序-&gt;MySQL-&gt;MySQL Command Line Client,输入MySQL的root密码。2)然后输入use 数据库名;进入对应的数据库,再用source 备份文件具体路径;命令导入备份文件。注意,在这里的命令后面都要加;分号,截图如下:2、mysql命令1)如果是Windows系统,...

mysql数据库怎么导入数据mysql数据库怎么导入数据库

1.Win32下MySQL的备份与还原1.1备份开始菜单|运行|cmd|利用“cdProgramFilesMySQLMySQLServer5.0in”命令进入bin文件夹|利用“mysqldump?-u用户名-pdatabasename&gt;exportfilename”导出数据库到文件,如mysqldump-uroot-pvoice&gt;voice.sql,然后输入密码即可开始导出。1.2还原进入MySQLCommandLineClient,输入...

MySQL数据库怎么导出数据?

MySQL 导出数据MySQL中你可以使用SELECT…INTO OUTFILE语句来简单的导出数据到文本文件上。使用 SELECT … INTO OUTFILE 语句导出数据 以下实例中我们将数据表 shulanxt_tbl 数据导出到 /tmp/shulanxt.txt 文件中:你可以通过命令选项来设置数据输出的指定格式,以下实例为导出 CSV 格式:在下面的例子中,...

如何用MySQL命令对数据库进行导出/导入/技巧

-d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table 4.导入数据库 常用source 命令 进入mysql数据库控制台, 如mysql -u root -p mysql&gt;use 数据库 然后使用source命令,后面参数为脚本文件(如这里用到的.sql) mysql&gt;source d:\wcnc_db.sql 4.可参看 MySQL数据的导出和导入工具:...

如何在Linux中导出导入MySQL数据库

本例中以在CentOS6.6下导入导出MySQL 5.1.73数据库举例说明。查看数据库版本1.输入“mysql --version”查看MySQL版本,本例中为5.1.73。查看当前数据库2.输入“mysql -u root -p”并输入密码登录。3.输入“show databases;”查看当前数据库。 注意:必须输入;4.输入“use mysql;”连接名为mysql...

mysql如何导出、导入数据库和表,详细一点

1、导出整个数据库 mysqldump -u 用户名 -p 数据库名 &gt; 导出的文件名 mysqldump -u dbuser -p dbname &gt; dbname.sql 2、导入数据到数据库 mysql -uroot -D数据库名 3、导出一个表 mysqldump -u 用户名 -p 数据库名 表名&gt; 导出的文件名 mysqldump -u dbuser -p dbname users&gt; dbname_...

SQL数据库怎么导入导出数据(sql数据库如何导入数据)

1,进入MySQL目录下的bin文件夹:cdMySQL中到bin文件夹的目录 如我输入的命令行:cdC:ProgramFilesMySQLMySQLServer4.1in (或者直接将windows的环境变量path中添加该目录) 2,导出数据库:mysqlmp-u用户名-p数据库名&lt;导出的文件名 如我输入的命令行:mysqlmp-uroot-pnews (如果导出单张表的话在数据库名后面输入表名...

使用什么命令导出数据库对象 oracle数据库导入导出命令 mysql数据库导出命令 mysql导入数据库命令 mysql如何导出数据库 exp命令导出数据库 数据库导入命令 sqlplus导出数据库命令 oracle导出表数据命令
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苗夫人厨卫燃气灶怎样 小猫一直在家门口坐着是什么意思? 黄色形容句子 文莱是哪个国家 文莱具体在什么地方 日产新阳光为什么手刹位置有个洞,掉进一跟铁丝和矿泉 新阳光右后轮刹车紧,有响声 日产新阳光手刹下的小孔里的按钮有什么用 日产新阳光为什么手刹位置有个洞,掉进一跟铁丝和矿泉水盖有影响不? 高分悬赏!高人解梦:昨晚梦到右手的无名指断掉,是怎么一回事? 白底青翡翠手镯戴久了有什么变化 白底青翡翠手镯戴久了变化有什么 SQL语句 导入导出 数据库导入导出单个表的SQL语句怎么写 SQL数据库导入导出语句该如何写 SQL数据库的导入与导出 关于oracle数据库的导入和导出 postgreSQL数据库里导入导出的sql语句是什么? 怎么样从数据库中导入和导出数据 数据库的导入与导出 我要下载陌陌 陌陌是干什么用的?很流行么?有微信好么? 陌陌软件是什么 陌陌删掉了文件管理上还有压缩包怎么回事 MOMO陌陌辅助脚本工具大家用的是哪个?怎么下载 剪映素材包打散是什么意思 触漫道具馆怎么用 选择照片时提示素材包更新是什么意思? 陌陌素材包下载失败? 陌陌动态发有一条未更新完的素材包怎么取消 陌陌素材包下不了? 陌陌无法设置聊天背景,总是提示下载素材包 如何用java实现mysql数据库的导入导出 mysql如何导出、导入数据库和表,详细一点 sql server 2000 数据库如何导入导出 sql数据库如何导出? oracle 数据库导入导出 什么是导入 导出数据库 sql数据库导入导出 如何进行数据库中表的导入导出 详细&#xFFFD;0&#xFF... orcale数据库导入导出数据的命令怎么写? 什么情况下应该使用数据库的数据导入和导出? 苹果7p来信息的闪光灯怎么设置 才买的苹果7p,但是手机来电或者来信息这个闪光灯... 苹果7p手机来电或者来信息这个闪光灯有时闪又是不... 来信息时的闪光灯怎么设置 你好,我苹果7p屏幕上有规则闪苹果图标,就是无法... 苹果7P拍照黑屏,还有闪光灯也没有了,怎么回事? 电脑上怎么下载绝地求生 苹果7plus来电闪光灯开着但是打电话不亮 大额存单可质押什么意思 存款单可以作为质押物吗