MySQL数据库导入方法(最佳方案--cmd命令行方式导入,不会导致数据结构或表丢失)

前言:之前直接在mysql图形界面管理工具Navicat上使用数据库导出,会导致数据结构或表的丢失:

所以,自己重新找到了一种解决方案:那就是通过cmd命令行方式导入,具体方法如下步骤所示:

1. 配置好mysql数据导出插件(xxx.bat)的基本配置,由于博客无法上传文件,所示展示文件代码,然后大家自行创建这个插件就好,插件内容其实也挺简单的,只需将配置项改为自己要导出的数据库的基本连接信息,然后将文件保存为.bat文件就好了

例如上图所示monitor.bat,代码如下:

@echo off   
echo ================================================   
echo mysqldump
echo ================================================ 

::以“YYYYMMDD”格式取出当前时间。 
set BACKUPDATE=%date:~0,4%%date:~5,2%%date:~8,2%

::用户
set USERNAME=root

::数据库
set DB=monitor

::密码
set PASSWORD=123456

::导出的dmp文件  
set dmpfile=E:mysql_bak

mysqldump -h192.xx.xx.212 -P3306 -u%USERNAME% -p%PASSWORD% -R %DB% > %dmpfile%%DB%_%BACKUPDATE%.sql;

2. 然后咱们双击这个插件,让插件运行后生成目标库的SQL文件(插件运行结束会自动关闭,千万别手贱提前关闭呀~),SQL文件就保存在我们上一步配置的"导出的dmp文件"项的目录下,例如我的SQL文件生成在"E:mysql_bak"目录下,如下图所示:

3.拿到目标库的SQL文件后,咱们接下来的工作就是导入了(在导入之间,先在导入的服务器创建该数据库,我的就默认在我的本地服务localhost上创建该数据库),如下图所示:

4. 最后一步,也是最重要的一步,就是打开cmd命令窗口,使用cmd命令行实现数据库的导入:

  4.1 打开cmd命令窗口

  4.2 输入自己本地mysql的用户名和密码,回车,登进mysql,如下图所示:

        mysql -u username -p password

  

  4.3 使用 "use dbname(第三步创建的数据库名)"命令行,指定使用该数据库,如下图所示:

  

  4.4 导入目标库的SQL文件,使用"source sql文件的绝对路径" 命令行运行,如下图所示:

  

 注1:输入source path/filename.sql 时,要使用’/’而不是’’,因为’’在sql中是一个命令字符,另外注意不要使用引号,完整的路径名。

 注2:导出时长根据数据库大小而定,可能需要一定的时间,请耐心等待一会便好,导出结束后,就可以在Navicat工具上刷新该数据库,查看数据库里导进来的数据了。

以上完成之后便搞定了,是不是跟简单,这样导入的数据库是完完整整的,并不会出现数据库的存储结构或者数据表等丢失的问题!

原文地址:https://www.cnblogs.com/4AMLJW/p/mysqldaochu20210420142710.html