Mysql导出:
1.
导出数据库(DB)结构:
mysqldump -u root -p -d DB_Name > DB_Name_Create.sql
2.导出数据库(DB)含所有数据:
mysqldump -u root -p DB_Name > DB_Name_Data.sql
说明:-u 用户名 -p 密码(密码不用填,敲回车的时候会要求输入) -d 意为导出结构
3.
导出数据库(DB)下表格(Table)结构:
mysqldump -u root -p -d DB_Name Table_Name > DB_Name_Table_Name_Create.sql
4.
导出数据库(DB)下表格(Table)含所有数据:
mysqldump -u root -p DB_Name Table_Name > DB_Name_Table_Name_Data.sql
5.导出数据库(DB)
含所有表(Table),存储过程(proc),函数(function)结构:
mysqldump -u root -p -R -d DB_Name > DB_Name_create_proc.sql
说明:-R 导出存储过程和函数
6.导出数据库(DB)
含所有存储过程(proc),函数(function)结构:
mysqldump -u root -p -R -d -t DB_Name > DB_Name_proc.sql
说明:-t 不导出表结构
7.导出数据库(DB)所有的数据,仅导出数据,不导出表结构。
mysqldump -u root -p --no-create-db --no-create-info
DB_Name > DB_Name_DATA.sql
当然,我想过单独导出所有的视图,貌似mysqldump没办法,视图也是表格(Table),导出后dd一下吧。如果需要可以用python写个脚本。
大致思路:
python执行mysql命令:
mysql>
select table_name from information_schema.views where table_schema='DB_Name';
+---------------------------+
| table_name
|
+---------------------------+
| add_yesDay
|
| view_lastDay_all
|
+---------------------------+
2 rows in set (0.00 sec)
获取到所有视图名后执行终端命令:
mysqldump -u root -p -d DB_Name Table_Name > DB_Name_View_Name_Create.sql
就这样一个for循环就可以了。
Mysql导入:
文件路径:
zhipeng@ubuntu:~$
ls
create_DB_Name.sql
zhipeng@ubuntu:~$
pwd
/home/zhipeng
zhipeng@ubuntu:~$
mysql -u root -p
Enter password:
mysql>
source /home/zhipeng/create_DB_Name.sql
OK,导入很简单,关键是SQL脚本。