MySQL 大文件导入导出

MySQL 大文件导入导出

大SQL文件导入

设变量 max_allowed_packet 也可以导入时临时设置

[root@localhost ~]# vi /etc/my.nf

[mysqld]
#mysqld 下 追加一行配置(安装时已配好,忽略此操作)
max_allowed_packet=32M   #大文件导入时用,也可以在命令行中临时设置

开始导入(下面命令包含了临时设变量)

[root@localhost ~]# cd /usr/local/mysql/bin
[root@localhost bin]# ./mysql -uroot -p123456 
#查看
mysql>show VARIABLES like '%max_allowed_packet%';
#临时设置,MySQL 服务重启后,恢复,服务器不重启只需要执行一次
mysql>set global max_allowed_packet = 2*1024*1024*10;  
#退出
mysql>exit;
重新登录
[root@localhost bin]# ./mysql -uroot -p123456 
#查看改后的值
mysql>show VARIABLES like '%max_allowed_packet%';
#选择数据库
mysql>use abc;
#设置数据库编码
mysql>set names utf8;
#导入数据(注意sql文件的路径)
mysql>source /data/abc.sql;

MySQL 大文件导入导出


【导出】

安全考虑,密码没跟在P后面

[root@localhost ~]# cd /usr/local/mysql/bin/

1、导出数据和表结构:
[root@localhost bin]# ./mysqldump -uroot -p pis_jkwsk > /data/pis_jkwsk.sql
 Enter password: 
[root@localhost bin]# ll /tmp/

2、导出指定表结构和数据
[root@localhost bin]# ./mysqldump -uroot -p pis_jkwsk ELB_MENUS > /data/pis_jkwsk.sql
 Enter password: 
[root@localhost bin]# ll /tmp/


3、导出排 除XX表,其它表的结构和数据,--ignore-table=<database>.<table>
[root@localhost bin]# ./mysqldump -uroot -p pis_jkwsk --ignore-table=pis_jkwsk.表1 --ignore-table=pis_jkwsk.表2 > /data/pis_jkwsk.sql
 Enter password: 
[root@localhost bin]# ll /tmp/


4、导出指定一个或多个表结构和数据
[root@localhost bin]# ./mysqldump -uroot -p pis_jkwsk 表1 表2 > /data/pis_jkwsk.sql
 Enter password: 
[root@localhost bin]# ll /tmp/


5、根据条件,导出指定表结构和数据
[root@localhost bin]# ./mysqldump -uroot -p pis_jkwsk ELB_MENUS --where=" ID='1071' and MENU_LEVEL=1"> /data/pis_jkwsk.sql
 Enter password: 
[root@localhost bin]# ll /tmp/
 

6、只导出所有表结构
[root@localhost bin]# ./mysqldump -uroot -p -d pis_jkwsk > /data/pis_jkwsk.sql
 Enter password: 
[root@localhost bin]# ll /tmp/

7、只导出指定表结构
[root@localhost bin]# ./mysqldump -uroot -p -d pis_jkwsk ELB_MENUS> /data/pis_jkwsk.sql
 Enter password: 
[root@localhost bin]# ll /tmp/

MySQL 大文件导入导出