ubuntu下mysql数据库导入导出

ubuntu下通过终端实现数据库导入导出

通过这段时间的工作,越来越觉得把一些用过查过的东西整理一下记录下来是有必要的。因为说不定哪天又用到了,到时再去查很是浪费时间。都说好记性不如烂笔头,在整理记录的过程中,也肯定会有一些思考,能更有助于自己学习一些东西。这两天要给一个客户做数据合并,补习了一下数据库导入导出的相关操作,看了很多网上的相关资料,怎么说呢,看起来很乱,不够清晰。于是自己整理一下记下来,同时用一下markdown,以后用到就可以看自己的了。(本来整理了很多,但是说实话写起来还是挺浪费时间的,先写一部分,感觉重要的以后慢慢补吧,现在还有其他东西要学)

准备工作
  • 先建一个数据库‘original_database’,建一个‘student’表,向里面插入几条数据,作为原始数据库。
    mysql> create database original_database; mysql> create table student(name char(10), age int); mysql> insert into student(name, age) values('Tom', 13),('Jone', 15),('Bob', 15),('Alice', 14);
    《ubuntu下mysql数据库导入导出》 原始数据库
  • 再建一个空数据库‘target_database’作为目标数据库。
    mysql> create database target_database;
导出数据库
  • 使用mysqldump命令导出数据库,我在自己的用户目录下建了一个‘database’目录,然后直接使用mysqldump命令将数据库导出。格式如下:
    mysqldump -u 用户名 -p 密码 database > xxx.sql
    我这里用户名是root,密码是等待输入的,数据库就是刚刚创建的原始数据库。然后把它导出到‘original.sql’这个文件里
    chenfei@ubuntu:~/database$ mysqldump -uroot -p original_database > original.sql
    导出后的文件就在当前执行命令的目录下,即database目录下。
    《ubuntu下mysql数据库导入导出》 用vim打开original.sql查看里面的信息
  • 我们还可以通过加相应的参数实现不同的导出效果。
    通过加‘-d’参数,可以实现只导出建表指令
    chenfei@ubuntu:~/database$ mysqldump -uroot -p -d original_database > original2.sql
    《ubuntu下mysql数据库导入导出》 用vim打开original2.sql可见里面只有建表指令
    通过加‘-t’参数,可以实现只导出插入数据的sql命令。
    chenfei@ubuntu:~/database$ mysqldump -uroot -p -t original_database > original3.sql
    《ubuntu下mysql数据库导入导出》 用vim打开original2.sql可见里面只有插入数据的sql命令
    还有很多其他参数,用的时候先去查阅就ok了。
导入数据库
  • 导入数据库就简单多了,使用‘mysql -u 用户名 -p 密码 database < xxx.sql ‘命令即可。
    这里我们把original.sql导入到刚才创建的空目标数据库‘target_database’里。
    chenfei@ubuntu:~/database$ mysql -uroot -p target_database < original.sql
    进入mysql的控制台看一下‘target_database’里是否有数据了。

《ubuntu下mysql数据库导入导出》 可以看到target_database已经有了和original_database一样的数据

这里主要是通过ubuntu终端来实现mysql数据库的导入导出操作,通过mysql的控制台也可以实现,等有时间再把控制台方式写下来以备以后查看使用。

点赞