怎样将MySQL数据导出到Excel表中

怎样将MySQL数据导出到Excel表中,第1张

在mysql命令行下执行以下sql语句:

mysql>select * from xi_table into outfile ’/tmp/test.xls’

一句话搞定。

linux系统尽量导出在/tmp目录下,不会涉及读写权限问题!

导出为txt文件:

select * from xi_table into outfile ’/tmp/test.txt’

有时候有excel打开的时候会出现乱码,

因为office默认的是gb2312编码,服务器端生成的很有可能是utf-8编码,这个时候你有两种选择:

在服务器端使用iconv来进行编码转换:

iconv -futf8 -tgb2312 -otest2.xls test.xls

如果转换顺利,那么从server上下载下来就可以使用了。

转换如果不顺利,则会提示:

iconv: illegal input sequence at position 1841 类似于这样的错误,

先把test.xls下载下来,这个时候文件是utf-8编码的,用excel打开,乱码。

把test.xls以文本方式打开,然后另存为,在编码选择ANSI编码,保存。

这样再用excel打开,乱码问题就解决了.

1.1、 mysqldump命令备份数据

在MySQL中提供了命令行导出数据库数据以及文件的一种方便的工具mysqldump,我们可以通过命令行直接实现数据库内容的导出dump,首先我们简单了解一下mysqldump命令用法:

#MySQLdump常用

mysqldump -u root -p --databases 数据库1 数据库2 >xxx.sql

1.2、 mysqldump常用 *** 作实例

1.备份全部数据库的数据和结构

mysqldump -uroot -p123456 -A >/data/mysqlDump/mydb.sql

2.备份全部数据库的结构(加 -d 参数)

mysqldump -uroot -p123456 -A -d >/data/mysqlDump/mydb.sql

3.备份全部数据库的数据(加 -t 参数)

mysqldump -uroot -p123456 -A -t >/data/mysqlDump/mydb.sql

4.备份单个数据库的数据和结构(,数据库名mydb)

mysqldump -uroot-p123456 mydb >/data/mysqlDump/mydb.sql

5.备份单个数据库的结构

mysqldump -uroot -p123456 mydb -d >/data/mysqlDump/mydb.sql

6.备份单个数据库的数据

mysqldump -uroot -p123456 mydb -t >/data/mysqlDump/mydb.sql

7.备份多个表的数据和结构(数据,结构的单独备份方法与上同)

mysqldump -uroot -p123456 mydb t1 t2 >/data/mysqlDump/mydb.sql

8.一次备份多个数据库

mysqldump -uroot -p123456 --databases db1 db2 >/data/mysqlDump/mydb.sql

可以用mysqldump工具

简单用例说明:

导入、导出数据库

导出:  mysqldump -uroot db1 >db1.sql  (注db1为database名)

导入:mysql -uroot test <db1.sql (注test为database名,将db1中所有的表及数据导入到test数据库)

导入、导出表

导出:mysqldump -uroot db1 tb1 tb2>tables.sql(注db1为database名,tb1 tb2为要导出的表列表,中间用空格隔开)

导入:mysql -uroot test <tables.sql(将db1数据库中的tb1和tb2表导入到test数据库)

常见参数:

--all-databases  , -A

导出全部数据库。

mysqldump  -uroot -p --all-databases

--all-tablespaces  , -Y

导出全部表空间。

mysqldump  -uroot -p --all-databases --all-tablespaces

--no-tablespaces  , -y

不导出任何表空间信息。

mysqldump  -uroot -p --all-databases --no-tablespaces

--add-drop-database

每个数据库创建之前添加drop数据库语句。

mysqldump  -uroot -p --all-databases --add-drop-database

--add-drop-table

每个数据表创建之前添加drop数据表语句。(默认为打开状态,使用--skip-add-drop-table取消选项)

mysqldump  -uroot -p --all-databases  (默认添加drop语句)

mysqldump  -uroot -p --all-databases –skip-add-drop-table  (取消drop语句)

--databases,  -B

导出几个数据库。参数后面所有名字参量都被看作数据库名。

mysqldump  -uroot -p --databases test mysql

--no-data, -d

不导出任何数据,只导出数据库表结构。

mysqldump  -uroot -p --host=localhost --all-databases --no-data

--host, -h

需要导出的主机信息

mysqldump  -uroot -p --host=localhost --all-databases

--password, -p

连接数据库密码

--port, -P

连接数据库端口号

--set-charset

添加'SET NAMES  default_character_set'到输出文件。默认为打开状态,使用--skip-set-charset关闭选项。

mysqldump  -uroot -p --host=localhost --all-databases

mysqldump  -uroot -p --host=localhost --all-databases --skip-set-charset

--tables

覆盖--databases (-B)参数,指定需要导出的表名。

mysqldump  -uroot -p --host=localhost --databases test --tables test

--user, -u

指定连接的用户名。

详见百度百科:mysqldump

http://baike.baidu.com/link?url=fBEnQdZKGnzmYOLzqxPXEh1HyeCWCy3i8v9hJ1UHU54BJ3jj8c3lhlmgUJ98urQAON4Bk2XuLpf2TAU9ieoA3_

Mysqldump参数大全(参数来源于mysql5.5.19源码)

http://hi.baidu.com/ququ_s/item/e45e35e204193af62b09a43d


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7489370.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-06
下一篇 2023-04-06

发表评论

登录后才能评论

评论列表(0条)

保存