mysql 逻辑备份导入数据库_mysql逻辑备份(mysql dump的使用)

mysqldump 属于MySQL客户端工具

mysqldump备份工具对于MyISAM存储引擎实现备份是温备份,对innodb存储引擎是可以实现热备份。

使用mysqldump备份数据库可以实现完全备份 + 二进制日志文件,这样也算是完全备份 + 增量备份。

首先将这个数据库备份下来这就是完全备份,然后以后数据的变化再每天进行对二进制日志进行备份这就是增量备份。

mysqldump命令的使用:

用法mysqldump  + 选项  +要备份的数据库

常用选项:

db_name:备份指定数据库如果备份数据库中某张表,db_name [tb_name]  备份时候并不包含创建数据库命令,意味着以后想还原数据时候需要手动创建数据库。

比如我们备份一个叫做file的数据库:

假如Linux下面我们可以这样

mysqldump -u root -p file >/root/sql/file.sql

这里叫表示备份到/root/sql/目录下,命名为file.sql

windows下备份

mysqldump -u root -p file > D:\sqlback\file.sql

备份好之后我们就可以使用文本编辑器打开了

6810454.html?utm_source=itdadao&utm_medium=referral

可以看到mysqldump的备份是将整个表中的数据备份为批量插入的insert语气。因此以后如果你删除了你所备份的数据库。想导入你备份的数据库是导入不了的,它里面没有创建数据库的命令。

例如我想尝试导入一个备份数据库:

6810454.html?utm_source=itdadao&utm_medium=referral

在Linux下面直接切换到备份数据路径下执行mysql < file.sql

现在我们创建一个叫做china的数据库再将MySQL版中国省市区数据导入

mysql -u root -p china < MySQL版中国省市区数据表.sql

这样执行表示导入这个MySQL版中国省市区数据表.sql备份数据到我们的china库中

6810454.html?utm_source=itdadao&utm_medium=referral

这种备份必须要在数据库在线的情况下才能备份,如果此时数据库非常繁忙时候时时刻刻都有写入操作的话,千万不能用这种方式进行备份,我们应该先进行锁表再备份。步骤如下:

首先使用mysql客户端连接上mysql以后,执行下面两句

lock tables;  #锁表,所有的表不能再写入数据。可以读数据

flush tables;   #将内存中的数据刷新保存到硬盘

或者执行flush tables with read lock;

备份完之后执行解锁表命令,务必记得

unlock tables;

--master-data=n

n的取值范围为0-2   0表示不记录二进制日志文件以及路径位置

1表示以change master to 的方式记录位置,可用于恢复启动后直接启动从服务器

2表示 以change master to的方式记录位置,但是默认为被注释掉

比如:

mysqldump -u root -p --master-data=2 file >D:\sqlback\file `date+ %F-%H-%M-%S`.sql

这里表示备份file库到指定路径下面以当前时间命名

如果报错:mysqldump: Error: Binlogging on server not active

表示没有开启二进制日志,需要在配置文件开启

通过这种方式备份以后。我们可以看到sql文件周会有一行

--change master to master_log_file='当前二进制日志文件名' master_log_pos=事件日志位置'

下次从二进制日志中备份数据时候就可以从这个二进制文件的这个位置往下备份就行了

--lock-tables表示自动锁定所有表,如果我们只是备份单个库而锁定所有表的话,这样是不合理的,我们可以使用这个选项。单独登陆mysql客户端锁定单张表,再进行备份

--flush_logs:备份之前自动执行日志刷新到磁盘

如果指定库中所有表的存储引擎均为innodb可以使用

--single-transaction启动热备份,启动热备份就无需我们手动锁表

备份多个库:

--all-databases;  备份所有库

--databases db_name1,db_name2,,,,, ;   备份多个库

这两个命令备份会创建数据库命令,因此还原时候就不需要再手动创建了

例如:

mysqldump -u root -p --single-transaction --all-databases --master-data = 2 --flush-logs >D:\sqlback\all.sql

这个表示我们将使用热备份将所有的库备份到D盘下面,命名为all.sql

--events  : 事件

--routines :存储过程,存储函数

--triggers:触发器

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/474745.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode 271. 字符串的编码与解码(4位16进制字符+字符串)

文章目录1. 题目2. 解题1. 题目 请你设计一个算法&#xff0c;可以将一个 字符串列表 编码成为一个 字符串。 这个编码后的字符串是可以通过网络进行高效传送的&#xff0c;并且可以在接收端被解码回原来的字符串列表。 1 号机&#xff08;发送方&#xff09;有如下函数&…

通过SQL Server 2008 访问Oracle 10g

之前写过一篇关于SQL Server 访问MySQL 数据库的文章&#xff0c;最近正好又遇到需要访问Oracle 的情况&#xff0c;将配置过程记录下来也供大家参考。 准备工作 事先在需要访问Oracle 数据库的主机上完成以下工作&#xff1a; 1. 安装SQL Server 数据库&#xff1a;SQL Server…

mysql注入技巧原理_MySQL注入技巧总结

0x00 介绍以下所有技巧都只在mysql适用&#xff0c;因为它太灵活了。0x01 MYSQl灵活的语法1 MySQL语法以及认证绕过注释符&#xff1a;#&#xff0c;-- X(X为任意字符)/*(MySQL-5.1);%00or 11;%00or 11 union select 1,2or 11 #/*!50000or*/ 11 -- - //版本号为5.1.38时只要小于…

LeetCode 410. 分割数组的最大值(极小极大化 二分查找 / DP)

文章目录1. 题目2. 解题2.1 二分查找2.2 DP1. 题目 给定一个非负整数数组和一个整数 m&#xff0c;你需要将这个数组分成 m 个非空的连续子数组。 设计一个算法使得这 m 个子数组各自和的最大值最小。 注意: 数组长度 n 满足以下条件: 1 ≤ n ≤ 1000 1 ≤ m ≤ min(50, n)示…

python 强制结束线程_在python中实现强制关闭线程的示例

Python 如何强制关闭线程过去只可以用来回忆&#xff0c;别沉迷在阴影中&#xff0c;否则永远看不清前面的路。Python用sleep停止一个线程的运行&#xff0c;而不影响主线程的运行&#xff0c;案例代码如下&#xff1a; from threading import *import time class MyThread(Thr…

Visual studio 2012 ultimate 安装遇到 Prerequisites , 错误的函数 incorrect function

如题 很奇怪, 然后 google , 给出的方案都不行........ 最后发现 原来iso没下全...........1.3gb, 原本是1.48gb 的............. 转载于:https://www.cnblogs.com/norsd/archive/2013/01/13/6359443.html

LeetCode 1121. 将数组分成几个递增序列

文章目录1. 题目2. 解题1. 题目 给你一个 非递减 的正整数数组 nums 和整数 K&#xff0c;判断该数组是否可以被分成一个或几个 长度至少 为 K 的 不相交的递增子序列。 示例 1&#xff1a; 输入&#xff1a;nums [1,2,2,3,3,4,4], K 3 输出&#xff1a;true 解释&#xff…

mysql注入单引号被过滤_证明过滤单引号的ORDER BY可以注入

题目&#xff1a;证明基于ORDER BY的SQL 注入&#xff0c;且单引号(’)被过滤。已知&#xff1a;代码如下&#xff0c;有注入无悬念。$sortColumn mysqli_real_escape_string($_GET[sort_column]);$query "SELECT * from cr0_3 WHERE active true ORDER BY $sortColumn …

error_reporting()的用法

PHP代码的调试 有时我们运行PHP代码的时候会碰到问题并且我们不知道这问题究竟出在哪儿。而PHP中专门有个error_reporting() 函数,它可以告诉你你的代码中的每一处错误。如果你希望它显示页面的所有可能出现的错误信息&#xff0c;可以将下面这句代码放在文件的第二行&#xff…

LeetCode 1272. 删除区间

文章目录1. 题目2. 解题1. 题目 给你一个 有序的 不相交区间列表 intervals 和一个要删除的区间 toBeRemoved&#xff0c; intervals 中的每一个区间 intervals[i] [a, b] 都表示满足 a < x < b 的所有实数 x 的集合。 我们将 intervals 中任意区间与 toBeRemoved 有交…

mysql多种join_MySQL的几种Join

/* 左表t1*/DROP TABLE IF EXISTS t1;CREATE TABLE t1 (id INT NOT NULL,NAME VARCHAR(20));INSERT INTO t1 VALUES (1,‘t1a‘);INSERT INTO t1 VALUES (2,‘t1b‘);INSERT INTO t1 VALUES (3,‘t1c‘);INSERT INTO t1 VALUES (4,‘t1d‘);INSERT INTO t1 VALUES (5,‘t1f‘);…

V折扣购买流程图

以前画的V折扣购买流程图&#xff1a; 转载于:https://www.cnblogs.com/wangkongming/archive/2013/01/16/2862275.html

LeetCode 549. 二叉树中最长的连续序列(树上DP)

文章目录1. 题目2. 解题1. 题目 给定一个二叉树&#xff0c;你需要找出二叉树中最长的连续序列路径的长度。 请注意&#xff0c;该路径可以是递增的或者是递减。 例如&#xff0c;[1,2,3,4] 和 [4,3,2,1] 都被认为是合法的&#xff0c;而路径 [1,2,4,3] 则不合法。 另一方面&…

mysql创建库并创建用户_mysql创建数据库并创建用户授权

CREATE USER myuser IDENTIFIED BY mypassword;创建一个不受主机限制的用户myuser&#xff0c;并且指定密码是mypasswordCREATE USER myuserlocalhost IDENTIFIED BY mypassword;或者CREATE USER myuser192.168.1.99 IDENTIFIED BY mypassword;创建一个制定主机访问的用户myuse…

【转】[iOS] 关于 self = [super init];

http://blog.csdn.net/wihing/article/details/7316041 转载于:https://www.cnblogs.com/ygm900/archive/2013/01/16/2862655.html

LeetCode 1230. 抛掷硬币(DP)

文章目录1. 题目2. 解题1. 题目 有一些不规则的硬币。在这些硬币中&#xff0c;prob[i] 表示第 i 枚硬币正面朝上的概率。 请对每一枚硬币抛掷 一次&#xff0c;然后返回正面朝上的硬币数等于 target 的概率。 示例 1&#xff1a; 输入&#xff1a;prob [0.4], target 1 输…

405 宝塔钩子_宝塔面板webhook配合gitlab完成git钩子的搭建

宝塔面板webhook配合gitlab完成git钩子的搭建我们假设你了解了gitlab的webhook的设置。熟悉宝塔面板并会安装宝塔webhook。如果还没掌握&#xff0c;请自行去了解。一、在宝塔面板中的软件中安装”宝塔WebHook”二、根据需求修改以下的文件。#!/bin/bashecho ""#输出…

maven 配置篇

什么是pom? pom作为项目对象模型。通过xml表示maven项目&#xff0c;使用pom.xml来实现。主要描述了项目&#xff1a;包括配置文件&#xff1b;开发者需要遵循的规则&#xff0c;缺陷管理系统&#xff0c;组织和licenses&#xff0c;项目的url&#xff0c;项目的依赖性&…

LeetCode 634. 寻找数组的错位排列(DP)

文章目录1. 题目2. 解题1. 题目 在组合数学中&#xff0c;如果一个排列中所有元素都不在原先的位置上&#xff0c;那么这个排列就被称为错位排列。 给定一个从 1 到 n 升序排列的数组&#xff0c;你可以计算出总共有多少个不同的错位排列吗&#xff1f; 由于答案可能非常大&…

mysql windows ad_mysql windows安装

http://blog.csdn.net/tossgoon/article/details/444124911、从该地址http://dev.mysql.com/downloads/mysql/中选择windows的版本&#xff0c;选择下载。2、将下载的压缩包解压。3、将根目录下的my-default.ini复制重命名为my.ini。4、打开my.ini文件&#xff0c;将下面的源码…