1.导出整个数据库
站在用户的角度思考问题,与客户深入沟通,找到乌拉特中网站设计与乌拉特中网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都网站设计、网站制作、企业官网、英文网站、手机端网站、网站推广、域名申请、网络空间、企业邮箱。业务覆盖乌拉特中地区。
mysqldump -u 用户名 -p 数据库名 导出的`文件名
mysqldump -u wcnc -p smgp_apps_wcnc wcnc.sql
2.导出一个表
mysqldump -u 用户名 -p 数据库名 表名 导出的文件名
mysqldump -u wcnc -p smgp_apps_wcnc users wcnc_users.sql
3.导出一个数据库结构
mysqldump -u wcnc -p -d --add-drop-table smgp_apps_wcnc d:wcnc_db.sql
-d 没有数据 --add-drop-table 在每个create语句之前增加一个
4.导入数据库
常用source 命令
进入mysql数据库控制台,
如mysql -u root -p
mysqluse 数据库
然后使用source命令,后面参数为脚本文件(如这里用到的.sql)
mysqlsource d:wcnc_db.sql
1.导出整个数据库mysqldump
-u
用户名
-p
数据库名
导出的文件名mysqldump
-u
wcnc
-p
smgp_apps_wcnc
wcnc.sql2.导出一个表mysqldump
-u
用户名
-p
数据库名
表名
导出的文件名mysqldump
-u
wcnc
-p
smgp_apps_wcnc
users
wcnc_users.sql3.导出一个数据库结构mysqldump
-u
wcnc
-p
-d
--add-drop-table
smgp_apps_wcnc
d:\wcnc_db.sql-d
没有数据
--add-drop-table
在每个create语句之前增加一个drop
table4.导入数据库常用source
命令进入mysql数据库控制台,
mysql
-
u
test
-
p1234
BugFree
D:/GreenAMP/BugFree.sql
如mysql
-u
root
-pmysqluse
数据库然后使用source命令,后面参数为脚本文件(如这里用到的.sql)mysqlsource
d:\wcnc_db.sql4.可参看
MySQL数据的导出和导入工具:mysqldump
alter
table
people
change
age
age
varchar(2);//将age属性改为varchar(2)
alter
table
people
change
age
ages
varchar(2)
not
null
default
'china';
//将age改为ages字段,且为varchar(2),not
null,默认值为‘china’
alter
table
people
drop
column
age;//
删除age列
alter
table
people
add
column
age
varchar(10)
not
null;//
添加age列
MySQL 数据库导入与导出,用到的工具,navicat,步骤如下:
打开navicat,点击连接,输入连接名,主机名或者ip地址,端口,用户名,密码,点击确定。
2.以aabb为示例数据库,选择aabb数据库双击。
3.导入数据库,右击aabb数据库选择运行sql文件,选择好要导入的数据文件以后,点击开始。
4.显示以下信息,说明导入成功。
5.导出数据库,右击aabb数据库选择转储sql文件,选择数据结构和数据,然后选择存储路径点击保存。
6.显示以下信息说明导出成功。
注意事项:navicat非免费软件。
1.使用create table xx as select
create table testtable as select distinct username,mname,college,mobno,cid from swdaydetail where sdate='20171101' and sdate'20171130';1
2.使用MySQL的SELECT INTO OUTFILE 、Load data file
LOAD DATA INFILE语句从一个文本文件中以很高的速度读入一个表中。当用户一前一后地使用SELECT … INTO OUTFILE 和LOAD DATA
INFILE 将数据从一个数据库写到一个文件中,然后再从文件中将它读入数据库中时,两个命令的字段和行处理选项必须匹配。否则,LOAD DATA INFILE 将不能正确地解释文件内容。
假设用户使用SELECT … INTO OUTFILE 以逗号分隔字段的方式将数据写入到一个文件中:
SELECT * INTO OUTFILE 'data.txt' FIELDS TERMINATED BY ',' FROM table2; 1
为了将由逗号分隔的文件读回时,正确的语句应该是:
LOAD DATA INFILE 'data.txt' INTO TABLE table2 FIELDS TERMINATED BY ','; 1
如果用户试图用下面所示的语句读取文件,它将不会工作,因为命令LOAD DATA INFILE 以定位符区分字段值:
LOAD DATA INFILE 'data.txt' INTO TABLE table2 FIELDS TERMINATED BY '\t'; 1
下面是用来导入导出的命令:
select * into outfile 'ddd.txt' fields terminated by ',' from dn_location; load data infile 'ddd.txt' into table dn_location2 FIELDS TERMINATED BY ','; 12
3.使用mysqldump ,source
mysqldump -u root -p -q -e -t webgps4 dn_location2 dn_location2.sql
mysqldump -u root -p -q -e -t --single-transaction webgps4 dn_location2 dn_location2.sql source dn_location2.sql 123
以上是导入导出数据的语句,该方法15分钟导出1.6亿条记录,导出的文件中平均7070条记录拼成一个insert语句,通过source进行批量插入,导入1.6亿条数据耗时将近5小时。平均速度:3200W条/h。后来尝试加上–single-transaction参数,结果影响不大。另外,若在导出时增加-w参数,表示对导出数据进行筛选,那么导入导出的速度基本不变,筛选出的数据量越大,时间越慢而已。对于其中的参数这里进行说明:
–quick,-q
该选项在导出大表时很有用,它强制 mysqldump 从服务器查询取得记录直接输出而不是取得所有记录后将它们缓存到内存中。
–extended-insert, -e
使用具有多个VALUES列的INSERT语法。这样使导出文件更小,并加速导入时的速度。默认为打开状态,使用–skip-extended-insert取消选项。
–single-transaction
该选项在导出数据之前提交一个BEGIN SQL语句,BEGIN 不会阻塞任何应用程序且能保证导出时数据库的一致性状态。它只适用于多版本存储引擎,仅InnoDB。本选项和–lock-tables 选项是互斥的,因为LOCK TABLES 会使任何挂起的事务隐含提交。要想导出大表的话,应结合使用–quick 选项。在本例子中没有起到加快速度的作用
mysqldump -uroot -p –host=localhost –all-databases –single-transaction
-t 仅导出表数据,不导出表结构
转载自