[size=small]mysqldump只导出数据或只导出表结构
1、备份数据库
#mysqldump -u 用户名 -p 数据库名 > 导出文件名
2、导出表结构
#mysqldump -u 用户名 -p -d 数据库名 --add-drop-table 表名 > 导出文件名 ##-d:表示没有数据,--add-drop-table 在每个creat语句之前增加一个drop table
3、导出表
#mysqldump -u 用户名 -p 数据库名 表名> 导出文件名
4、导出数据
#mysqldump -u 用户名 -p -t 数据库名 > 导出文件名
5、导入数据
#mysql 数据库名<文件路径 -u 用户名 -p
实例:
备份数据库
#mysqldump 数据库名 >数据库备份名
#mysqldump -A -u 用户名 -p密码 数据库名>数据库备份名
#mysqldump -d -A --add-drop-table -uroot -p >xxx.sql
导出结构不导出数据
mysqldump --opt -d 数据库名 -u root -p > xxx.sql
导出数据不导出结构
mysqldump -t 数据库名 -uroot -p > xxx.sql
导出数据和表结构
mysqldump 数据库名 -uroot -p > xxx.sql
导出特定表的结构
mysqldump -uroot -p -B 数据库名 --table 表名 > xxx.sql
导入数据
#mysql 数据库名 < 文件名
===
导出:
mysqldump -u root -p week_system > /bak_mysql/week_systembak.sql
导入:
必须先新建一个同名的库,才能恢复,不然会报错。
mysqldump: Got error: 1049: Unknown database 'week_systembak' when selecting the database
mysql> create database week_system character set utf8;
Query OK, 1 row affected (0.02 sec)
mysql> \q
Bye
[root@localhost etc]# mysqldump -u root -p week_system < /tmp/week_systembak.sql
Enter password:
-- MySQL dump 10.13 Distrib 5.6.19, for Linux (x86_64)
--
-- Host: localhost Database: week_system
-- ------------------------------------------------------
-- Server version 5.6.19
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!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' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
-- Dump completed on 2014-07-30 1:00:00
----导入完成,但发现数据库是空的
--原来是命令用错了:
mysql -u root -p week_system < /tmp/week_systembak.sql
就可以正常看到表了。
添加条件:
mysqldump -h rdsa3qfmmqriq3y.mysql.rds.aliyuncs.com -uweblog -pweblog -w "date='2014-11-13'" weblog update_log >/tmp/update.sql
先创建:mysql>create database bugtracker character uft8;
再还原:root@viptest2 ~]# mysql -uroot -ptina1 bugtracker < ./bugtracker.sql[/size]