mysql导出导入表结构及数据

mysql创建用户:

[MaraiDB [(none)]>grant all privileges on *.* 'vmanager'@'%' identified by 'passwd';
[MaraiDB [(none)]>flush privileges;

导出指定表结构

#导出vdi数据库vdi_staff vdi_log vdi_request vdi_resolv表结构
#mysqldump -hhostname -uusername -ppassword -d databasename > ***.sql
mysqldump -h*** -uvmanager -p -d vdi vdi_staff vdi_log vdi_request vdi_resolv > ./vdi_other.sql

导出表结构及数据

#导出vdi_admin 表结构及数据
#mysqldump -hhostname -uusername -ppassword databasename > ***.sql
mysqldump vdi vdi_admin > ./vdi_admin.sql

导入数据库

#先进入mysql
mysql -h*** -uvmanager -p
#创建数据库
[MaraiDB [(none)]>create database vdi;
#进入vdi数据库
[MaraiDB [(none)]>use vdi;
#导入数据库表
[MaraiDB [(vdi)]>source ~/niuhe/vdi_admin.sql
#查看
[MaraiDB [(vdi)]>show tables;
[MaraiDB [(vdi)]>describe vdi_admin;
[MaraiDB [(vdi)]>show create table vdi_admin;
[MaraiDB [(vdi)]>quit
#或者创建数据库vdi后,在shell命令窗口通过mysql导入
#mysql -hhostname -u用户名 -p 数据库名 < ***.sql
mysql -h*** -uvmanager -p vdi < vdi_admin.sql

参数说明:
-d 结构(--no-data:不导出任何数据,只导出数据库表结构)
-t 数据(--no-create-info:只导出数据,而不添加CREATE TABLE 语句)
-n (--no-create-db:只导出数据,而不添加CREATE DATABASE 语句)
-R (--routines:导出存储过程以及自定义函数)
-E (--events:导出事件)
--triggers (默认导出触发器,使用--skip-triggers屏蔽导出)
-B (--databases:导出数据库列表,单个库时可省略)

--tables 表列表(单个表时可省略)
①同时导出结构以及数据时可同时省略-d和-t
②同时 不 导出结构和数据可使用-ntd
③只导出存储过程和函数可使用-R -ntd
④导出所有(结构&数据&存储过程&函数&事件&触发器)使用-R -E(相当于①,省略了-d -t;触发器默认导出)
⑤只导出结构&函数&事件&触发器使用 -R -E -d

参考:

Mysql添加用户,给用户授权

mysql 数据库导入导出方法总结

MySQL导出数据库、数据库表结构、存储过程及函数

mysql导出数据库几种方法

 
喜欢 0
分享