在Centos中使用命令导入导出超大型数据,以防止数据库卡库

在Centos中使用命令导入导出超大型数据,以防止数据库卡库

导出整个数据库的所有数据

在linux命令行输入:

mysqldump -u userName -p databaseName > filename.sql

filename 最好在前面加上指定绝对路径,指定具体的保存地址

导出数据库中的某个表的数据

mysqldump -u userName -p -d databaseName  tableName > filename.sql 

导出整个数据库中某个表的表结构

在linux命令行下输入
mysqldump -u userName -p -d dabaseName tableName > fileName.sql

将数据导入mysql方法一:

导数据之前要先use 数据库,不然会报错
mysql -u root -p 回车 输入密码
source fileName.sql
注意fileName.sql要有路径名,例如:source /home/user/data/fileName.sql

将数据导入mysql方法二:

mysql -uroot -p database < fileName.sql
注意fileName.sql要有路径名

如果数据文件超级大,那么导入会无法导入或者导入超时,那是因为sql_mode的限制
这时候修改my.cnf文件可以解决
输入命令:vi /etc/my.cnf
添加 sql_mode =ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

再重启mysql :systemctl restart mysqld
重启后进入mysql,再使用方法一或方法二导入数据。导数据之前要先use 数据库

备注:如果navicat连接mysql报1146 - Table ‘performance_schema.session_variables’ doesn’t exist,执行: mysql_upgrade -u root -p --force 来升级服务器版本

猜你喜欢

转载自blog.csdn.net/qq_42384228/article/details/87788221
今日推荐