• 技术文章 >数据库 >mysql教程

    MySQL导入导出数据库方法介绍

    2016-06-07 17:52:29原创516

    我们都知道不管是在于windows系统还是在linux环境中MySQL数据库的导入分为有两种1) 先导出数据库SQL脚本,再导入;2) 直接拷贝数据库目录和文件。

    操作方法


    1,进入MySQL目录下的bin文件夹:cd MySQL中到bin文件夹的目录
    如我输入的命令行:cd C:Program FilesMySQLMySQL Server 4.1bin
    2,导出数据库:mysqldump -u 用户名 -p 数据库名 > 导出的文件名
    如我输入的命令行:mysqldump -u root -p news > news.sql (输入后会让你输入进入MySQL的密码)
    (如果导出单张表的话在数据库名后面输入表名即可)
    3、会看到文件news.sql自动生成到bin文件下

    命令行导入数据库:

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

    1.导出整个数据库

    代码如下 复制代码
      mysqldump -u 用户名 -p 数据库名 > 导出的文件名
      mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql

    2.导出一个表
     

    代码如下 复制代码
     mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
      mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql

    3.导出一个数据库结构
     

    代码如下 复制代码

     mysqldump -u wcnc -p -d --add-drop-table smgp_apps_wcnc >d:wcnc_db.sql
      -d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table

    导入数据库

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

    Linux下:

    2. 方法一 SQL脚本形式
    操作步骤如下:
    2.1. 导出SQL脚本
    在原数据库服务器上,可以用phpMyAdmin工具,或者mysqldump(mysqldump命令位于mysql/bin/目录中)命令行,导出SQL脚本。
    2.1.1 用phpMyAdmin工具
    导出选项中,选择导出“结构”和“数据”,不要添加“DROP DATABASE”和“DROP TABLE”选项。
    选中“另存为文件”选项,如果数据比较多,可以选中“gzipped”选项。
    将导出的SQL文件保存下来。
    2.1.2 用mysqldump命令行
    命令格式
    mysqldump -u用户名 -p 数据库名 > 数据库名.sql
    范例:
    mysqldump -uroot -p abc > abc.sql
    (导出数据库abc到abc.sql文件)
    提示输入密码时,输入该数据库用户名的密码。
    2.2. 创建空的数据库
    通过主控界面/控制面板,创建一个数据库。假设数据库名为abc,数据库全权用户为abc_f。
    2.3. 将SQL脚本导入执行
    同样是两种方法,一种用phpMyAdmin(mysql数据库管理)工具,或者mysql命令行。
    2.3.1 用phpMyAdmin工具
    从控制面板,选择创建的空数据库,点“管理”,进入管理工具页面。
    在”SQL”菜单中,浏览选择刚才导出的SQL文件,点击“执行”以上载并执行。
    注意:phpMyAdmin对上载的文件大小有限制,php本身对上载文件大小也有限制,如果原始sql文件
    比较大,可以先用gzip对它进行压缩,对于sql文件这样的文本文件,可获得1:5或更高的压缩率。
    gzip使用方法:
    # gzip xxxxx.sql
    得到
    xxxxx.sql.gz文件。
    2.3.2 用mysql命令行
    命令格式
    mysql -u用户名 -p 数据库名 < 数据库名.sql
    范例:
    mysql -uabc_f -p abc < abc.sql
    (导入数据库abc从abc.sql文件)
    提示输入密码时,输入该数据库用户名的密码。
    3 方法二 直接拷贝
    如果数据库比较大,可以考虑用直接拷贝的方法,但不同版本和操作系统之间可能不兼容,要慎用。
    3.1 准备原始文件
    用tar打包为一个文件
    3.2 创建空数据库
    3.3 解压
    在临时目录中解压,如:
    cd /tmp
    tar zxf mydb.tar.gz
    3.4 拷贝
    将解压后的数据库文件拷贝到相关目录
    cd mydb/
    cp * /var/lib/mysql/mydb/
    对于FreeBSD:
    cp * /var/db/mysql/mydb/
    3.5 权限设置
    将拷贝过去的文件的属主改为mysql:mysql,权限改为660

    代码如下 复制代码
    chown mysql:mysql /var/lib/mysql/mydb/*
    chmod 660 /var/lib/mysql/mydb/*

    把mysqldump出来的数据修改一下。除了要把表增加上) TYPE=MyISAM CHARACTER SET gbk;以外,在下面再增加一句SET NAMES GBK;
    这样,数据就可以平滑的导入4.1了,而不必怕出现乱码。


    Windows下:

    DOS 窗口
    开始->运行-> cmd
    导出为: mysqldump -u 用户名 -p –opt 数据库用户名 > 数据库名.sql
    输入你的数据库密码!
    导入为:mysql -u 用户名 -p 数据库用户名 < 数据库名.sql (要在当前目录下操作)

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    上一篇:mysql学习笔记查询今天、昨天、7天、近30天、本月、上一月 数据 下一篇:mysql开启远程登录方法介绍
    php培训_php实战培训【立即报名】-php中文网第20期

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• mysql substring()函数怎么用• mysql中sum()函数怎么用• 一起聊聊MySQL全局锁• mysql怎么取字符串前几位• mysql中有if吗
    1/1

    PHP中文网