zoukankan      html  css  js  c++  java
  • mysql数据导出

    在日常维护工作当中经常会需要对数据进行导出操作,而mysqldump是导出数据过程中使用非常频繁的一个工具;它自带的功能参数非常多,文章中会列举出一些常用的操作,在文章末尾会将所有的参数详细说明列出来。

    参见博客。

    语法
    默认不带参数的导出,导出文本内容大概如下:创建数据库判断语句-删除表-创建表-锁表-禁用索引-插入数据-启用索引-解锁表。

    Usage: mysqldump [OPTIONS] database [tables]
    OR mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]
    OR mysqldump [OPTIONS] --all-databases [OPTIONS]
    导出所有数据库

    mysqldump -uroot -proot --all-databases >/tmp/all.sql
    导出db1、db2的数据库中所有数据

    mysqldump -uroot -proot --databases db1 db2 >/tmp/user.sql
    导出db1中的a1、a2表

    注意导出指定表只能针对一个数据库进行导出,且导出的内容中和导出数据库也不一样,导出指定表的导出文本中没有创建数据库的判断语句,只有删除表-创建表-导入数据

    mysqldump -uroot -proot --databases db1 --tables a1 a2 >/tmp/db1.sql
    条件导出,导出db1表a1中id=1的数据

    如果多个表的条件相同可以一次性导出多个表

    字段是整形

    mysqldump -uroot -proot --databases db1 --tables a1 --where='id=1' >/tmp/a1.sql
    字段是字符串,并且导出的sql中不包含drop table,create table

    mysqldump -uroot -proot --no-create-info --databases db1 --tables a1 --where="id='a'" >/tmp/a1.sql
    生成新的binlog文件,-F

    有时候会希望导出数据之后生成一个新的binlog文件,只需要加上-F参数即可

    mysqldump -uroot -proot --databases db1 -F >/tmp/db1.sql
    只导出表结构不导出数据,--no-data

    mysqldump -uroot -proot --no-data --databases db1 >/tmp/db1.sql
    服务器导出导入数据

    mysqldump --host=h1 -uroot -proot --databases db1 |mysql --host=h2 -uroot -proot db2
    将h1服务器中的db1数据库的所有数据导入到h2中的db2数据库中,db2的数据库必须存在否则会报错

    mysqldump --host=192.168.80.137 -uroot -proot -C --databases test |mysql --host=192.168.80.133 -uroot -proot test

    将主库的binlog位置和文件名追加到导出数据的文件中,--dump-slave

    注意:--dump-slave命令如果当前服务器是从服务器那么使用该命令会执行stop slave来获取master binlog的 文件和位置,等备份完后会自动执行start slave启动从服务器。但是如果是大的数据量备份会给从和主的延时变的更大,使用--dump-slave获取到的只是当前的从服务器的数据执行到的主的binglog的位置是(relay_mater_log_file,exec_master_log_pos),而不是主服务器当前的binlog执行的位置,主要是取决于主从的数据延时。

    该参数在在从服务器上执行,相当于执行show slave status。当设置为1时,将会以CHANGE MASTER命令输出到数据文件;设置为2时,会在change前加上注释。

    该选项将会打开--lock-all-tables,除非--single-transaction被指定。

    在执行完后会自动关闭--lock-tables选项。--dump-slave默认是1

    mysqldump -uroot -proot --dump-slave=1 --databases db1 >/tmp/db1.sql

  • 相关阅读:
    点击对应不同name的button,显示不同name的弹窗(弹窗功能)
    点击添加本地图片的前端效果制作
    巧用margin/padding的百分比值实现高度自适应(多用于占位,避免闪烁)
    移动端取消touch高亮效果
    手机网站的几点注意
    图片自动切换+链接
    使用DOM的方法获取所有li元素,然后使用jQuery()构造函数把它封装为jQuery对象
    使用jQuery匹配文档中所有的li元素,返回一个jQuery对象,然后通过数组下标的方式读取jQuery集合中第1个DOM元素,此时返回的是DOM对象,然后调用DOM属性innerHTML,读取该元素 包含的文本信息
    利用jQuery扩展接口为jQuery框架定义了两个自定义函数,然后调用这两个函数
    jQuery链式语法演示
  • 原文地址:https://www.cnblogs.com/MartyCode/p/12513054.html
Copyright © 2011-2022 走看看