linux下mysql导出导入方法

mysql导出 数据库几种方法
 
方法一
cmd 到mysql bin目录下用 如下命令 mysqldump --opt -h192.168.0.156 -uusername -ppassword --skip-lock-tables databasename>database.sql   
  把ip改成localhost就可以的  www.2cto.com  
  如果装了navicate那就更简单了 先连接上数据库,选中数据库 再选择转储sql 就好了
 
方法二
进入cmd (注意在os cmd中 而不是在mysql中)
  ===================
  1.导出数据库(sql脚本)  
  mysqldump -u 用户名 -p 数据库名 > 导出的文件名
  mysqldump -u root -p db_name > test_db.sql
  2.mysql导出数据库一个表
  mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
  mysqldump -u wcnc -p test_db users> test_users.sql (结尾没有分号)
 
方法三
启动mysql服务
/etc/init.d/mysql start
导出整个数据库
mysqldump dbname > c:mydb.sql -u root -p 
导入数据库
source mydb.sql
mysql -u用户名 -p 数据库名 < 数据库名.sql
更详细的导入数据库教程
  www.2cto.com  
2.1. 导出sql脚本
在原数据库服务器上,可以用php教程myadmin工具,或者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(my sql数据库管理)工具,或者 mysql命令行。
2.3.1 用phpmyadmin工具
从控制面板,选择创建的空数据库,点"管理",进入管理工具页面。
在"sql"菜单中,浏览选择刚才导出的sql文件,点击"执行"以上载并执行。
注意:phpmyadmin对上载的文件大小有限制,php本身对上载文件大小也有限制,如果原始sql文件
比较大,可以先用gzip对它进行压缩,对于sql文件这样的文本文件,可获得1:5或更高的压缩率。
 
gzip使用方法:  www.2cto.com  
# gzip xxxxx.sql
得到
xxxxx.sql.gz文件。
2.3.2 用mysql命令行
命令格式
mysql -u用户名 -p 数据库名 < 数据库名.sql
范例:
mysql -uabc_f -p abc < abc.sql
(导入数据库abc从abc.sql文件)
提示输入密码时,输入该数据库用户名的密码。


平时可能大家应用的mysql的导入和导出方法都很多,今天给大家介绍几种导入与导出mysql数据的方法,方便大家在工作中使用。

以下是百度得到的:

一、mysql导入文件或数据或执行相关SQL

  1. 1

    mysql -h主机地址 -u用户名 -p用户密码,文件形式。(shell命令行)

    mysql -u root -p dbname < filename.sql

  2. 2

    直接放在命令行(shell命令行)执行一个sql

    mysql -hhostname -uusername -p dbname -e 'select * from tbname limit 1'

    执行后命令行会提示输入数据库密码。

  3. 3

    把SQL作为一个输入给MYSQL(shell命令行)

    echo 'select id from dbname.tbname where id = 1;' | mysql -hhostname -ureadonly -preadonly dbname > xxxx.sql

  4. 4

    进入mysql数据库(数据库中执行SQL文件)

    >source xxx.sql

    END

二、导出库表(mysqldump)

  1. 1

    mysqldump -u用户名 -p密码 -h主机 数据库 a -w “sql条件” –lock-all-tables > 路径

    mysqldump -hhostname -uusername -p dbname tbname>xxxx.sql

  2. 2

    ** 按指定条件导出数据库表内容。(-w选项 –where)

    mysqldump -hhostname -uusername-p dbname tbname -w'id >= 1 and id<= 10000'--skip-lock-tables > xxxx.sql

  3. 3

    或这下一行

    mysqldump -hhostname -uusername -p dbname tbname --where='unit_id >= 1 and unit_id <= 10000'> ~/xxxx.sql


    END

三、mysqldump导出库表详细举

  1. 1

    导出整个数据库
    mysqldump -u 用户名 -p数据库名 > 导出的文件名

    >mysqldump -u breezelark-p mydb > mydb.sql


  2. 2

    导出一个表(包括数据结构及数据)
    mysqldump -u 用户名 -p数据库名 表名> 导出的文件名

    mysqldump -u lingxi -p mydb mytb> mytb.sql


  3. 3

    导出一个数据库结构(无数据只有结构)

    mysqldump -u lingxi -p -d --add-drop-table mydb >mydb.sql

    -d 没有数据–add-drop-table 在每个create语句之前增加一个drop table
    当然这只是导入导出的其中一种方法,大家可以感觉自己的情况选择适合自己的方法。


你可能感兴趣的:(linux下mysql导出导入方法)