mysql binlog二进制日志详解
二进制日志包含了所有更新了数据或者已经潜在更新了数据(例如,没有匹配任何行的一个DELETE)的所有语句
基本概念定义:
二进制日志包含了所有更新了数据或者已经潜在更新了数据(例如,没有匹配任何行的一个DELETE)的所有语句。
作用:
1。二进制日志的主要目的是在恢复使能够最大可能地更新数据库,因为二进制日志包含备份后进行的所有更新。
2。二进制日志还用于在主复制服务器上记录所有将发送给从服务器的语句。
不良影响:
运行服务器时若启用二进制日志则性能大约慢1%。
如何启动:
通过 –log-bin=file选项可以启用
(更改my.ini文件)
日志位置
>>如果没有指定文件名,则Mysql使用hostname-bin文件.
>>如果指定了相对路径,则假定该路径相对于数据目录
>>Mysql在文件名后添加了数字索引.所以该文件最后的形式为filename.number
如果你在日志名中提供了扩展名(例如,–log-bin=file_name.extension),则扩展名被悄悄除掉并忽略。
更换策略:
使用索引来循环文件,在以下条件将循环至下一个索引
1。服务器重启
2。服务器被更新
3。日志到达了最大日志长度 max_binlog_size
4。日志被刷新 mysql> flush logs;
工具介绍:
shell>>mysqlbinlog [option] binlogFile> newfile
如: D:\mysql\log>mysqlbinlog binlog.000001 > 1.txt
一个例子:
log-bin=”D:/mysql/log/binlog” 那么,在该文件夹下就会有文件D:/mysql/log/binlog.000001等
常见问题
1.如何清除binlog
>>>使用下面的两个命令
PURGE {MASTER | BINARY} LOGS TO ‘log_name' //log_name不会被清除
PURGE {MASTER | BINARY} LOGS BEFORE ‘date' //date不会被清除
实例如下:
mysql> purge master logs to ‘binlog.000004′;
Query OK, 0 rows affected (0.01 sec)
mysql> purge master logs before '2009-09-22 00:00:00′;
Query OK, 0 rows affected (0.05 sec)
>>>或使用命令
RESET MASTER
删除之前所有的binlog,并重新生成新的binlog
后缀从000001开始
注:如果您有一个活性的从属服务器,该服务器当前正在读取您正在试图删除的日志之一,
则本语句不会起作用,而是会失败,并伴随一个错误。
不过,如果从属服务器是休止的,并且您碰巧清理了其想要读取的日志之一,则从属服务器启动后不能复制。
当从属服务器正在复制时,本语句可以安全运行。您不需要停止它们。
2.记录到二进制日志知的内容配置
binlog-do-db=sales 只记录sales库
binlog-ignore-db=sales 除sales库不记录,其他都记录
但是如果在操作数据库之前,不使用use $dbname 那么所有的SQL都不会记录
如果使用了use $dbname,那么判断规则取决于这里的$dbname,而不是SQL中操作的库
3.二进制日志不准确的处理
默认情况下,并不是每次写入时都将二进制日志与硬盘同步。因此如果操作系统或机器(不仅仅是MySQL服务器)崩溃,有可能二进制日志中最后的语句丢失。
要想防止这种情况,你可以使用sync_binlog全局变量(1是最安全的值,但也是最慢的),使二进制日志在每N次二进制日志写入后与硬盘同步。
即使sync_binlog设置为1,出现崩溃时,也有可能表内容和二进制日志内容之间存在不一致性。
如果崩溃恢复时MySQL服务器发现二进制日志变短了(即至少缺少一个成功提交的InnoDB事务),
如果sync_binlog =1并且硬盘/文件系统的确能根据需要进行同步(有些不需要)则不会发生,则输出错误消息 (“二进制日志比期望的要小”)。
在这种情况下,二进制日志不准确,复制应从主服务器的数据快照开始。

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen











Die Protokolle von win10 können Benutzern helfen, die Systemnutzung im Detail zu verstehen, wenn sie nach ihren eigenen Verwaltungsprotokollen suchen. Was bedeutet dieser Code? Was ist Win10-Protokoll 6013: 1. Dies ist ein normales Protokoll. Die Informationen in diesem Protokoll bedeuten nicht, dass Ihr Computer neu gestartet wurde, sie geben jedoch an, wie lange das System seit dem letzten Start in Betrieb war. Dieses Protokoll erscheint einmal täglich pünktlich um 12 Uhr. Wie kann man überprüfen, wie lange das System läuft? Sie können systeminfo in cmd eingeben. Es gibt eine Zeile darin.

Die Protokolle von Win10 können Benutzern helfen, die Systemnutzung im Detail zu verstehen, wenn sie nach ihren eigenen Verwaltungsprotokollen suchen. So lösen Sie das Win10-Protokollereignis 7034: 1. Klicken Sie auf „Start“, um die „Systemsteuerung“ zu öffnen. 2. Suchen Sie nach „Verwaltungstools“. 3. Klicken Sie auf „Dienste“. 4. Suchen Sie nach HDZBCommServiceForV2.0, klicken Sie mit der rechten Maustaste auf „Dienst stoppen“ und ändern Sie es zu „Manueller Start“

Mit der rasanten Entwicklung des Internets und von Webanwendungen wird die Protokollverwaltung immer wichtiger. Bei der Entwicklung von Webanwendungen ist die Suche und Lokalisierung von Problemen ein sehr kritisches Thema. Ein Protokollierungssystem ist ein sehr effektives Werkzeug, das uns bei der Bewältigung dieser Aufgaben helfen kann. ThinkPHP6 bietet ein leistungsstarkes Protokollierungssystem, das Anwendungsentwicklern dabei helfen kann, in Anwendungen auftretende Ereignisse besser zu verwalten und zu verfolgen. In diesem Artikel wird erläutert, wie Sie das Protokollierungssystem in ThinkPHP6 verwenden und wie Sie das Protokollierungssystem verwenden

In Linux-Systemen können Sie den folgenden Befehl verwenden, um den Inhalt der Protokolldatei anzuzeigen: Befehl tail: Der Befehl tail wird verwendet, um den Inhalt am Ende der Protokolldatei anzuzeigen. Dies ist ein allgemeiner Befehl zum Anzeigen der neuesten Protokollinformationen. tail [Option] [Dateiname] Zu den häufig verwendeten Optionen gehören: -n: Geben Sie die Anzahl der anzuzeigenden Zeilen an. Der Standardwert ist 10 Zeilen. -f: Überwachen Sie den Dateiinhalt in Echtzeit und zeigen Sie den neuen Inhalt automatisch an, wenn die Datei aktualisiert wird. Beispiel: tail-n20logfile.txt#Zeigen Sie die letzten 20 Zeilen der Datei logfile.txt an. tail-flogfile.txt#Überwachen Sie den aktualisierten Inhalt der Datei logfile.txt in Echtzeit. Head-Befehl: Der Head-Befehl wird verwendet, um den Anfang anzuzeigen der Protokolldatei

Mit dem iPhone können Sie Medikamente zur Gesundheits-App hinzufügen, um die Medikamente, Vitamine und Nahrungsergänzungsmittel, die Sie täglich einnehmen, zu verfolgen und zu verwalten. Anschließend können Sie eingenommene oder ausgelassene Medikamente protokollieren, wenn Sie eine Benachrichtigung auf Ihrem Gerät erhalten. Nachdem Sie Ihre Medikamente protokolliert haben, können Sie sehen, wie oft Sie sie eingenommen oder ausgelassen haben, um Ihren Gesundheitszustand besser im Auge zu behalten. In diesem Beitrag zeigen wir Ihnen, wie Sie den Protokollverlauf ausgewählter Medikamente in der Health-App auf dem iPhone anzeigen. Eine kurze Anleitung zum Anzeigen Ihres Medikamentenprotokollverlaufs in der Gesundheits-App: Gehen Sie zu Gesundheits-App>Durchsuchen>Medikamente>Medikamente>Medikament auswählen>Optionen&a

Binäre Arithmetik ist eine Operationsmethode, die auf Binärzahlen basiert. Zu ihren Grundoperationen gehören Addition, Subtraktion, Multiplikation und Division. Die binäre Arithmetik umfasst neben Grundoperationen auch logische Operationen, Verschiebungsoperationen und andere Operationen. Zu den logischen Operationen gehören UND, ODER, NICHT und andere Operationen, und Verschiebungsoperationen umfassen Linksverschiebungs- und Rechtsverschiebungsoperationen. Für diese Operationen gelten entsprechende Regeln und Operandenanforderungen.

Binärzahlen werden durch Einsen und Nullen dargestellt. Das 16-Bit-Hexadezimalzahlensystem ist {0,1,2,3…..9,A(10),B(11),…F(15)}, um von der binären Darstellung in eine hexadezimale Darstellung umzuwandeln. Stellt das Bit dar Die Zeichenfolgen-ID ist in 4-Bit-Blöcke gruppiert, sogenannte Nibbles, beginnend mit der niedrigstwertigen Seite. Jeder Block wird durch die entsprechende Hexadezimalzahl ersetzt. Sehen wir uns ein Beispiel an, um ein klares Verständnis der Darstellung hexadezimaler und binärer Zahlen zu erhalten. 001111100101101100011101 3 E 5 B&nb

Wie lese ich Binärdateien in Golang? Binärdateien sind in binärer Form gespeicherte Dateien, die Daten enthalten, die ein Computer erkennen und verarbeiten kann. In Golang können wir einige Methoden verwenden, um Binärdateien zu lesen und sie in das gewünschte Datenformat zu analysieren. Im Folgenden wird das Lesen von Binärdateien in Golang vorgestellt und spezifische Codebeispiele gegeben. Zuerst müssen wir eine Binärdatei mit der Open-Funktion aus dem Betriebssystempaket öffnen, die ein Dateiobjekt zurückgibt. Dann können wir machen
