mysql 数据导出导入

7 篇文章 0 订阅

1.每个版本的数据库字符集会有差别,如果导出数据库的话会包字符集异常,需要改下字符集,

 

yum -y install holland-mysqldump.noarch   #备份组件
mysqldump -uroot -p123qqq...A -E -R cloud >cloud.sql  #备份数据库

导出数据库所有库
mysqldump -h 127.0.0.1 -uroot -p"Gd*(53#SALE" -R -E --all-databases  >back.sql
导入数据库所有库
mysql -h 10.36.21.220 -P 30004 -uroot -p'3!y5cD&%2OWz' <back.sql
备份单表
mysqldump -h 域名 -P 端口 -u用户 -p密码   库名  表名 > /路径/表名.{$date}.bak
mysqldump -h gem-zs-p-db01. -uroot -p"Gd" zhaoshang user_export_logs > /home/user_export_logs

导入表数据
mysql -h 10.0.21.250 -uroot -p"Gd"
source /home/user_export_logs

 

导入数据库结构出现错误ERROR 1273 (HY000) at line 25: Unknown collation: 'utf8mb4_0900_ai_ci'解决办法

把文件中的所有的utf8mb4_0900_ai_ci替换为utf8_general_ci
以及utf8mb4替换为utf8

sed -i 's/utf8mb4_0900_ai_ci/utf8_general_ci/g' cloud.sql

sed -i 's/utf8mb4/utf8/g' cloud.sql

mysql -uroot -p123qqq...A cloud <cloud.sql   

1.要实现点对点的备份恢复,或者对于某点的数据完整备份,必须使用--single-transaction 和--master-data=2两个参数,比如主从搭建时候的,因为在--single-transaction参数中,没可以保证数据备份的备份时间点的事务一致性

2.--single-transaction备份对于数据库的影响时间比较长,影响范围比较大 ,但是加入该参数后,对于多张大表的备份速度肯定会加快。

3.--lock-all-tables并不能保持所有数据对于某个时间点的一致性
 

备份指定数据库

mysql -e "show databases;" -h 10.36.21.220 -P 30003 -uroot -p'Gd*(53#SALE'| grep -Ev "Database|information_schema|mysql|sys|__recycle_bin__|performance_schema" | xargs mysqldump -h 10.36.21.220 -P 30003 -uroot -p'Gd*(53#SALE' -R -E --single-transaction --databases >30003.sql
mysql -h 10.36.21.220 -P 30003 -uroot -p'Gd*(53#SALE' <30003.sql

mysql 导入数据出错就停止,如何忽略错误继续?

在 MySQL 中,可以通过使用 --force 或 --skip-errors 参数来忽略错误并继续导入数据。

--force 参数将忽略所有的错误,包括语法错误、重复键值、外键约束错误等,但这可能会导致导入的数据存在问题。

例如,可以使用以下命令来使用 --force 参数导入数据
mysql -u username -p --force database_name < file.sql

例如,可以使用以下命令来使用 --skip-errors 参数导入数据:
--skip-errors 参数将忽略某些错误,例如插入重复的记录或插入违反外键约束的记录,但会继续导入数据文件

mysql -u username -p --skip-errors database_name < file.sql

需要注意的是,在忽略错误的情况下,导入的数据可能存在问题,建议在导入数据前备份原有数据,并在导入完成后进行检查和验证。

mysql -h 10.36.21.221 -P 30003 root -p'Gd*(53#SALE' --force < 30003_20230624_033100.sql

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值