MySQL数据库怎么安全导入导出?不用面板也能操作


!doctype html MySQL数据库怎么安全导入导出?不用面板也能操作 - 梦主博客 登录 首页 网站文章 经典语录 闲思杂记 随心所欲 ...

<!doctype html>

MySQL数据库怎么安全导入导出?不用面板也能操作 - 梦主博客
梦主博客
登录
  • 首页
  • 网站文章
  • 经典语录
  • 闲思杂记
  • 随心所欲
  • 图片欣赏
  • 网站公告
  • 首页
  • 网站文章
  • 经典语录
  • 闲思杂记
  • 随心所欲
  • 图片欣赏
  • 网站公告
  • 登录
  • 找回密码
  • 首页
  • 网站文章
  • 经典语录
  • 闲思杂记
  • 随心所欲
  • 图片欣赏
  • 网站公告
  1. 网站文章
  2. 23 0

MySQL数据库怎么安全导入导出?不用面板也能操作

梦主Lv1 新手上路 发布于 2026-10-30 23:36 网站文章

一、数据库导出(备份)用mysqldump

mysqldump是MySQL自带的备份工具,不用装额外软件,命令行就能用,最常用的导出命令:

不用面板也能操作

1. 导出整个数据库到sql文件

mysqldump -u用户名 -p密码 数据库名 > 备份文件名.sql
# 例子
mysqldump -uroot -p123456 my_blog > my_blog_20261030.sql

注意-p和密码之间没有空格,不然会报错。执行之后会让你输密码,输完就会在当前目录生成备份sql文件。

2. 只导出表结构,不导出数据

如果只要建表语句,不要数据,加-d参数:

mysqldump -uroot -p -d 数据库名 > schema.sql

3. 只导出部分表

比如只导出数据库里的文章表和评论表:

mysqldump -uroot -p 数据库名 表名1 表名2 > tables_backup.sql

4. 导出大数据库的时候加这几个参数

几G的大数据库用默认参数导出可能会很慢,或者导入的时候有问题,加这几个参数更好:

mysqldump -uroot -p --single-transaction --default-character-set=utf8mb4 --skip-lock-tables 数据库名 > backup.sql

  • --single-transaction:对InnoDB表做一致性备份,不用锁表,导出的时候不影响数据库正常读写,这个非常重要,不然导出的时候会锁表网站就打不开了;
  • --default-character-set=utf8mb4:指定字符集utf8mb4,避免emoji表情乱码;
  • --skip-lock-tables:跳过锁表,适合MyISAM表,InnoDB用--single-transaction就够了。

二、数据库导入的两种方法

方法1:命令行直接导入,适合大文件

导入前先提前建好空数据库,然后执行:

mysql -u用户名 -p 数据库名 < 备份文件.sql
# 例子
mysql -uroot -p my_blog_new < my_blog_20261030.sql

输入密码之后就会开始导入,文件多大都能导,不会有phpmyadmin的上传大小限制、超时问题。 如果导入的时候出现中文乱码,加--default-character-set参数:

mysql -uroot -p --default-character-set=utf8mb4 my_blog_new < my_blog_20261030.sql

方法2:进入MySQL命令行用source导入

先登录MySQL:

mysql -uroot -p

然后创建数据库、选数据库:

-- 创建数据库,字符集选utf8mb4
CREATE DATABASE my_blog_new DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
-- 用这个数据库
USE my_blog_new;
-- 然后用source命令导入,写备份文件的绝对路径
source /root/backup/my_blog_20261030.sql;

执行之后就会开始导入,会显示每一步的执行结果,如果sql文件有报错能直接看到在哪。

三、常见坑和注意事项

  1. 导入导出一定要注意字符集统一:数据库、表、连接字符集都用utf8mb4,不然导入之后中文乱码、emoji丢失是常有的事,别用utf8,utf8在MySQL里是假的,不支持4字节的emoji;
  2. 导出大文件不要用phpmyadmin:phpmyadmin是web端,PHP有执行时间限制、内存限制,几百M的文件很容易导入导出到一半超时,导了一半失败还容易搞坏数据,大文件直接用命令行最稳妥;
  3. 导入前最好把外键检查关了:如果数据库有外键约束,导入的时候可能因为表导入顺序不对报错,可以在sql文件最开头加这两行:

SET FOREIGN_KEY_CHECKS=0;
-- 导入内容
SET FOREIGN_KEY_CHECKS=1;

不过用mysqldump导出的文件默认已经加了,不用自己加; 4. 备份文件不要存在服务器同一块磁盘上:备份完最好下载到本地或者传到其他存储上,不然服务器磁盘坏了备份也没了。 我一般迁移网站数据库都是直接用mysqldump导出,scp传到新服务器,命令行导入,比面板快很多,哪怕几个G的数据库也不会出问题,非常稳。

版权说明
本文版权归作者所有,转载请注明出处。侵权请联系删除 邮箱:68126549@qq.com
作者:梦主 文章地址:https://www.cnhack90.com/mysql-import-export
0
MySQL数据库运维开发研习
相关推荐
  • 网站加速全球访问加速还可以防御ddos攻击
  • emlog博客程序几行代码统计网站在线人数
  • 腾讯云服务器如何生成备案授权码
  • emlogpro文章编辑器editor.md的快捷键
返回
关于作者
梦主
梦主 管理员 Lv1 新手上路
分享日常分享快乐
91245 文章 0 评论
进入主页
站点数据
文章 91245 文章
评论 0 评论
会员 1 会员
标签 78 标签
新鲜出炉
  • 1
    MySQL数据库怎么安全导入导出?不用面板也能操作 1 天前
  • 2
    网站被CC攻击?快速识别和缓解方法 1 天前
  • 3
    文章标题别随便写:符合百度收录的标题写法 1 天前
  • 4
    Windows服务器远程桌面连不上?常见问题排查 1 天前
  • 5
    换域名不丢流量:301重定向正确配置方法 1 天前
  • 6
    服务器哪些端口必须关?最小化端口开放的安全配置 2 天前
  • 7
    网站被上传php木马怎么办?三步快速排查和清理方法 2 天前
梦主博客

本站不储存任何资源,所有资源均来自网友自愿分享,如有侵权请联系站长。

  • 网站已经ICP和网安备案请遵守备案规则请勿非法使用本站文章

蜀ICP备2022027223号-1  |  川公网安备51172502000183号

联系我们
  • 68126549
  • 68126549@qq.com

怎样才能提高网站收录 - 教程 -

Windows服务器远程桌面连不上?常见问题排查

评 论
请登录后再评论