一、导出数据库

我的mysql安装目录是D:\Program Files\MySQL\MySQL Server 5.5\bin\,导出文件预计放在D:\sql\

在mysql的安装目录执行命令: mysqldump -hhostname -uusername -ppassword databasename > d:\sql\databasename.sql

在mysql5.7的时候报出一个警告,但是数据导出成功:

现在换一种方式解决上述问题:

创建一my.cnf文件,我放在与mysqldump.exe同级目录下面:C:\Program Files\MySQL\MySQL Server 5.7\bin

[client]
port =
socket = /tmp/mysql.sock
default-character-set = utf8mb4
host = localhost
user = root
password = ''

重新导出:(exam9为数据库名字)

C:\Program Files\MySQL\MySQL Server 5.7>mysqldump --defaults-extra-file=my.cnf e
xam9 > e:/database.sql

不会报警告:

二、导出数据库表结构

第一种:(报警告,但是执行成功!)

执行命令: mysqldump -hhostname -uusername -ppassword -d databasename > d:\sql\databasename.sql 

C:\Program Files\MySQL\MySQL Server 5.7>mysqldump -uroot -p123456 -d exam9 >e:/j
iegou.sql
mysqldump: [Warning] Using a password on the command line interface can be insec
ure.

第二种:(借助上面的cnf文件,不会报警告)

C:\Program Files\MySQL\MySQL Server 5.7>mysqldump --defaults-extra-file=my.cnf -
d exam9 > e:/jiegou111.sql C:\Program Files\MySQL\MySQL Server 5.7>

三、导出数据库表结构以及数据

第一种:(报警告,但是执行成功!)

C:\Program Files\MySQL\MySQL Server 5.7>mysqldump -uroot -p123456 -t exam9 >e:/s
huju.sql
mysqldump: [Warning] Using a password on the command line interface can be insec
ure.

第二种:(借助上面的cnf文件,不会报警告)

C:\Program Files\MySQL\MySQL Server 5.7\bin>mysqldump --defaults-extra-file=my.c
nf -t exam9 > e:/shuju111.sql C:\Program Files\MySQL\MySQL Server 5.7\bin>

四、导出存储过程及函数

1、查询数据库中的存储过程和函数

方法一:

select `name` from mysql.proc where db = 'databasename' and `type` = 'PROCEDURE'; // 存储过程
    select `name` from mysql.proc where db = 'databasename' and `type` = 'FUNCTION' // 函数

方法二:

show procedure status;
    show function status;

2、mysql导出存储过程及函数

执行命令: mysqldump -hhostname -uusername -ppassword -ntd -R databasename > prorandfunc.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导出数据库、数据库表结构、存储过程及函数【用】的更多相关文章

  1. mysql导出word的表结构操作

    mysql导出word的表结构操作 1.首先准备好mysql的相关插件mysql-connector-odbc和DBExportDoc 百度网盘地址: 链接:https://pan.baidu.com ...

  2. LINUX 下mysql导出数据、表结构

    1.首先要确认mysqldump命令所在路径 例如,我的在:/usr/bin/ 下 [root@sf105113 bin]# which mysqldump /usr/bin/mysqldump 2. ...

  3. SqlServer判断数据库、表、存储过程、函数是否存在

    假设场景是: 需要给一个脚本给客户更新, 这个对象可能存在或不存在 -- 更新存储过程 USE [数据库名] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ...

  4. SQL Server判断数据库、表、存储过程、函数是否存在

    --判断数据库是否存在 if exists (select * from sys.databases where name = '数据库名') drop database [数据库名] --判断表是否 ...

  5. MySQL导入导出数据和表结构 source和mysqldump

    MySQL导入数据的方式: 1.使用source /dir/test.sql导入数据进入数据库:查询数据库编码格式show variables like "%char%";设置编码 ...

  6. 导入导出Mysql数据库、表结构、表数据

    由sql文件导入 mysql -uusername -ppwd < ./abc.sql 导出整个数据库的表结构 mysqldump -uroot -pdbpasswd -d dbname > ...

  7. MySQL 对比数据库的表结构

    有时候,需要对比一下测试环境和生产环境中,数据库的表结构是否有所差异.有两个常用的工具. AmpNmp.DatabaseCompare GUI 界面,支持多种数据库(MySQL.SQL Server. ...

  8. 数据库MySQL之 视图、触发器、存储过程、函数、事务、数据库锁、数据库备份、事件

    数据库MySQL之 视图.触发器.存储过程.函数.事务.数据库锁.数据库备份.事件 浏览目录 视图 触发器 存储过程 函数 事务 数据库锁 数据库备份 事件 一.视图 1.视图概念 视图是一个虚拟表, ...

  9. mysql第五篇 : MySQL 之 视图、触发器、存储过程、函数、事物与数据库锁

    第五篇 : MySQL 之 视图.触发器.存储过程.函数.事物与数据库锁 一.视图 视图是一个虚拟表(非真实存在的),其本质是‘根据SQL语句获取动态的数据集,并为其命名‘ ,用户使用时只需使用“名称 ...

  10. 通过EA导入数据库存在表结构并生成文档

    通过EA导入数据库存在表结构并生成文档   慕课网,程序员升职加薪神器,点击免费学习 目录[-] 导入数据源,表结构 生成表结构的文档 Enterprise Architect 是超级强大项目管理功能 ...

随机推荐

  1. libxml2.dylb 导致<libxml/tree.h> 老是找不到头文件

    添加了libxml2.dylb的framework ,结果还是引用不了<libxml/tree.h>,  老是提示找不到头文件. 这个问题其实比较容易解决,但是XCode的版本问题确实让开 ...

  2. synchronized 和ReentrantLock的区别

    历史知识:JDK5之前,只有synchronized 可以用,之后就有了ReetrantLock可以用了 ReetrantLock (再入锁) 1.位于java.util.concurrnt.lock ...

  3. Bootstrap历练实例:表单控件状态(禁用)

    禁用的输入框 input 如果您想要禁用一个输入框 input,只需要简单地添加 disabled 属性,这不仅会禁用输入框,还会改变输入框的样式以及当鼠标的指针悬停在元素上时鼠标指针的样式. < ...

  4. Memcache查看列出所有key方法

    Memcached查看列出所有key方法 测试的过程中,发现Memcached没有一个比较简单的方法可以直接象redis那样keys *列出所有的Session key,并根据key get对应的se ...

  5. Eclipse调试:Run on server 和 Debug on server 区别

    Run on server: 以正常模式运行程序.会直接把程序从头到尾执行一遍,运行完就结束,不会进入到源代码里面(即使源代码中设置了断点). Debug on server: 以调试模式运行程序,或 ...

  6. Linux关于FTP安全

    https://www.cnblogs.com/Hyber/archive/2017/02/04/6362916.htmlhttps://www.cnblogs.com/ichunqiu/p/7300 ...

  7. jquery如何获取手机网页触屏坐标:ontouchstart 、ontouchend、ontouchmove

    function handleTouchEvent(event) { //只跟踪一次触摸 ) { var output = document.getElementById("output&q ...

  8. perl学习之子例程

    1.system function  && user function system fucntion:chomp  reverse print... user function: & ...

  9. verilog behavioral modeling --procedural assignments

    1.procedural assignments are used for updating reg ,integer , time ,real,realtime and memory data ty ...

  10. sweetalert使用随笔

    删除前确认框: //找到删除那天记录的按钮,触发点击事件 $(".del").on('click', function () { swal({ title: "操作确认& ...