linux下如何导入导出MySQL数据库

一、导出:

用mysqldump命令行

命令格式

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

范例:

mysqldump -u root -p abc > abc.sql

(导出数据库abc到abc.sql文件)

提示输入密码时,输入该数据库用户名的密码。


二、导入:

用mysql命令行

命令格式

mysql -u 用户名 -p 数据库名


三、直接COPY

如果数据库比较大,可以考虑用直接拷贝的方法,但不同版本和操作系统之间可能不兼容,要慎用。

3.1 将原始数据库用tar打包为一个文件

tar -zcvf mydb.tar.gz mydb

3.2 创建空数据库

3.3 解压

在临时目录中解压,如:

cd /tmp

tar -zxvf 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 -u 用户名 -p 数据库名 > 导出的文件名  mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql  2.mysql导出数据库一个表  mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名  mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql  3.mysql导出一个数据库结构  mysqldump -u wcnc -p -d --add-drop-table smgp_apps_wcnc >d:wcnc_db.sql  -d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table  4.mysql导入数据库  常用source 命令  进入mysql数据库控制台,  如mysql -u root -p  mysql>use 数据库  然后使用source命令,后面参数为脚本文件(如这里用到的.sql)

  mysql>source d:wcnc_db.sql

//-------------------------------------------------------------------------------------------------------------

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

1、导出数据和表结构:

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

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

敲回车后会提示输入密码

2、只导出表结构

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

#/usr/local/mysql/bin/mysqldump -uroot -p -d abc > abc.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 abc < abc.sql

注意:有命令行模式,有sql命令