linux下导入、导出mysql数据库文件的命令

时间:2022-09-20 07:38:48
linux下导入、导出mysql数据库命令

一、导出数据库用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

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



二、导入数据库


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 -u abc_f -p abc < abc.sql

建议使用第二种方法导入。

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



mysql文件如下:

-- --------------------------------------------------------
-- 主机: 127.0.0.1
-- 服务器版本: 5.6.22-log - MySQL Community Server (GPL)
-- 服务器操作系统: Win64
-- HeidiSQL 版本: 9.2.0.4970
-- --------------------------------------------------------


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET NAMES utf8mb4 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;


-- 导出 extrace 的数据库结构
CREATE DATABASE IF NOT EXISTS `extrace` /*!40100 DEFAULT CHARACTER SET utf8 */;
USE `extrace`;


-- 导出 表 extrace.customer 结构
CREATE TABLE IF NOT EXISTS `customer` (
`id` int(10) NOT NULL AUTO_INCREMENT,
`cname` varchar(16) DEFAULT NULL,
`telcode` varchar(24) DEFAULT NULL,
`department` varchar(64) DEFAULT NULL,
`regioncode` char(6) DEFAULT NULL,
`address` varchar(64) DEFAULT NULL,
`poscode` int(10) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8;



见另一篇博客:mysql导出文件处理

http://blog.csdn.net/u011630575/article/details/46638295