MySQL命令行导出导入数据库实例详解

 更新时间:2023年03月27日 22:26:48   投稿:lqh  
这篇文章主要介绍了MySQL命令行导出导入数据库实例详解的相关资料,需要的朋友可以参考下

一、window环境

A. 导出.sql

1. 导出整个数据库

mysqldump -u 用户名 -p 数据库名 > 导出的文件名
mysqldump -u dbuser -p dbname > dbname.sql

2. 导出一个表

mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
mysqldump -u dbuser -p dbname users> dbname_users.sql

3. 导出一个数据库结构

mysqldump -u dbuser -p -d --add-drop-table dbname >d:/dbname_db.sql
-d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table

B. 导入.sql

常用source 命令

进入mysql数据库控制台,如
mysql -u root -p
mysql>use 数据库
然后使用source命令,后面参数为脚本文件(如这里用到的.sql)
mysql>source d:/dbname.sql

导入数据到数据库

mysql -uroot -D数据库名

导入数据到数据库中得某个表

mysql -uroot -D数据库名 表名

二、linux环境

A. 导出.sql

导出数据库用mysqldump命令(注意mysql的安装路径,即此命令的路径):

1、导出数据和表结构:

mysqldump -u 用户名 -p 参数(可选) 数据库名 >/home/sql/ 数据库名.sql

mysqldump -u root -p --default-character-set=utf8 db_name>/home/sql/fileName.sql

敲回车后会提示输入密码

2、只导出表结构

mysqldump -u用户名 -p密码 -d 数据库名 > 数据库名.sql

/usr/local/mysql/bin/ mysqldump -uroot -p -d abc > abc.sql

注:/usr/local/mysql/bin/ —> mysql的data目录

B. 导入.sql

1、首先建空数据库

mysql>create database abc;

2、导入数据库

方法一:
(1)选择数据库
mysql>use abc;
(2)设置数据库编码
mysql>set names utf8;
(3)导入数据(注意sql文件的路径)
mysql>source /home/abc/abc.sql;

方法二:

mysql -u用户名 -p 参数(可选) 数据库名 < 数据库名.sql
mysql -uabc_f -p--default-character-set=utf8 abc < abc.sql

MySQL命令行导出数据库:

1,进入MySQL目录下的bin文件夹:cd MySQL中到bin文件夹的目录

如我输入的命令行:cd C:\Program Files\MySQL\MySQL Server 5.5\bin

(或者直接将windows的环境变量path中添加该目录)

 2,导出数据库:mysqldump -u 用户名 -p 数据库名 > 导出的文件名

如我输入的命令行:mysqldump -u lmapp -p lmapp -P 3308 > lmapp.sql   (输入后会让你输入进入MySQL的密码)
(如果导出单张表的话在数据库名后面输入表名即可)

mysql导出数据库一个表
mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
mysqldump -u lmapp -p lmapp users> test_users.sql (结尾没有分号)

3、会看到文件news.sql自动生成到bin文件下  

 导出时,遇到上面的问题。

解决措施:加个参数-P 3308(mysql服务端口)即可解决问题。

命令行导入数据库:

1,将要导入的.sql文件移至bin文件下,这样的路径比较方便
2,同上面导出的第1步
3,进入MySQL:mysql -u 用户名 -p
如我输入的命令行:mysql -u root -p   (输入同样后会让你输入MySQL的密码)
4,在MySQL-Front中新建你要建的数据库,这时是空数据库,如新建一个名为news的目标数据库
5,输入:mysql>use 目标数据库名
如我输入的命令行:mysql>use news;
6,导入文件:mysql>source 导入的文件名;

如我输入的命令行:mysql>source news.sql; 

       注:由于导入数据库的规模、数据结构不同,导入所需时间会有较大差异。我导入的数据库有123M,花费将近5个小时。期间以为机器宕掉了,仔细观察命令行界面发现,导入是在正常进行的。导入成功后的界面如下:

      

 注:导入单张数据表时,使用类似use lmapp lm_area 、source lm_area.sql的sql语句。原数据表可存在,导入后的数据表会覆盖同名已存在的数据表。

MySQL备份和还原,都是利用mysqldump、mysql和source命令来完成的。

1.Win32下MySQL的备份与还原

1.1 备份

开始菜单 | 运行 | cmd |利用“cd \Program Files\MySQL\MySQL Server 5.0\bin”命令进入bin文件夹 | 利用“mysqldump  -u 用户名 -p databasename >exportfilename”导出数据库到文件,如mysqldump -u root -p voice>voice.sql,然后输入密码即可开始导出。

1.2 还原

进入MySQL Command Line Client,输入密码,进入到“mysql>”,输入命令"show databases;",回车,看看有些什么数据库;建立你要还原的数据库,输入"create database voice;",回车;切换到刚建立的数据库,输入"use voice;",回车;导入数据,输入"source voice.sql;",回车,开始导入,再次出现"mysql>"并且没有提示错误即还原成功。

2.Linux下MySQL的备份与还原

2.1 备份

[root@localhost ~]# cd /var/lib/mysql (进入到MySQL库目录,根据自己的MySQL的安装情况调整目录)
[root@localhost mysql]# mysqldump -u root -p voice>voice.sql,输入密码即可。

2.2 还原

法一:

[root@localhost ~]# mysql -u root -p 回车,输入密码,进入MySQL的控制台"mysql>",同1.2还原。

法二:

[root@localhost ~]# cd /var/lib/mysql (进入到MySQL库目录,根据自己的MySQL的安装情况调整目录)
[root@localhost mysql]# mysql -u root -p voice<voice.sql,输入密码即可。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

  • 一文带你了解MySQL之连接原理

    一文带你了解MySQL之连接原理

    搞数据库一个避不开的概念就是Join,翻译成中⽂就是连接,相信很多小伙伴初学连接的时候有些一脸懵,理解了连接的语义之后又可能不明白各个表中的记录到底是怎么连起来的,所以本章就来学习连接的原理,需要的朋友可以参考下
    2023-05-05
  • MySQL8.0移除传统的.frm文件原因及解读

    MySQL8.0移除传统的.frm文件原因及解读

    MySQL 8.0移除传统的.frm文件,采用基于InnoDB的事务型数据字典,主要解决了元数据不一致、性能优化、架构简化、增强功能支持、兼容性与升级问题,这一变革提高了数据库的可靠性和性能,为未来的高级功能奠定了基础
    2025-03-03
  • 全面解析MySQL常见问题的排查与解决方法

    全面解析MySQL常见问题的排查与解决方法

    MySQL 是一款常用的关系型数据库管理系统,广泛应用于各类应用开发和数据管理场景,然而,在实际使用中,MySQL 有时会遇到启动失败、服务中断或性能问题等情况,所以本文给大家介绍了MySQL常见问题的排查与解决方法,需要的朋友可以参考下
    2024-11-11
  • 彻底搞懂数据库操作truncate delete drop关键词的区别

    彻底搞懂数据库操作truncate delete drop关键词的区别

    这篇文章主要为大家介绍了数据库操作truncate delete drop关键词的区别,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-09-09
  • mysql5.7.18.zip免安装版本配置教程(windows)

    mysql5.7.18.zip免安装版本配置教程(windows)

    这篇文章主要为大家详细介绍了mysql5.7.18.zip安装教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • MySQL性能压力基准测试工具sysbench的使用简介

    MySQL性能压力基准测试工具sysbench的使用简介

    这篇文章主要介绍了MySQL性能压力基准测试工具sysbench的使用简介,帮助大家更好的理解和学习使用MySQL,感兴趣的朋友可以了解下
    2021-04-04
  • mysql 5.7.23 解压版安装教程图文详解

    mysql 5.7.23 解压版安装教程图文详解

    这篇文章主要介绍了mysql 5.7.23 解压版安装教程图文详解 ,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-10-10
  • MySQL联合查询之轻松实现数据关联详解

    MySQL联合查询之轻松实现数据关联详解

    MySQL中当查询数据来自多张表时需要用到关联查询,下面这篇文章主要给大家介绍了关于MySQL联合查询之轻松实现数据关联的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-06-06
  • 如何通过配置自动实现ValueList中hql语句的整型参数转换

    如何通过配置自动实现ValueList中hql语句的整型参数转换

    本篇文章是对通过配置自动实现ValueList中hql语句的整型参数转换进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • MySQL之DATE_ADD()和DATE_SUB()函数的使用方式

    MySQL之DATE_ADD()和DATE_SUB()函数的使用方式

    这篇文章主要介绍了MySQL之DATE_ADD()和DATE_SUB()函数的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-04-04

最新评论