• <menu id="w2i4a"></menu>
  • logo Navicat使用教程-2019.1

    文檔首頁(yè)>>Navicat使用教程-2019.1>>Navicat使用教程(二):使用MySQL日志(第2部分)——二進(jìn)制日志

    Navicat使用教程(二):使用MySQL日志(第2部分)——二進(jìn)制日志


    下載Navicat for MySQL最新版本

    Navicat for MySQL 是一套管理和開(kāi)發(fā) MySQL 或 MariaDB 的理想解決方案。使用Navicat for MySQL可以同時(shí)連接到 MySQL 和 MariaDB。Navicat for MySQL提供了強(qiáng)大的前端功能,為數(shù)據(jù)庫(kù)管理、開(kāi)發(fā)和維護(hù)提供了直觀的圖形界面。對(duì)新手和專業(yè)人士來(lái)說(shuō),Navicat for MySQL都是管理和開(kāi)發(fā) MySQL 或 MariaDB的強(qiáng)大工具。

    記錄是關(guān)于記錄數(shù)據(jù)庫(kù)中發(fā)生的事情。就像有些人可能會(huì)保留個(gè)人日志來(lái)記下他們?nèi)粘I钪邪l(fā)生的事情一樣,數(shù)據(jù)庫(kù)日志會(huì)跟蹤登錄和交易等事情。更重要的是,有效日志應(yīng)包括有關(guān)訪問(wèn)控制和輸入驗(yàn)證失敗的條目。默認(rèn)情況下啟用的唯一MySQL日志是錯(cuò)誤日志(至少在Windows上)。

    上篇文章講了MySQL上不同日志類型的概述,突出了其中最重要的一些——即錯(cuò)誤日志、常規(guī)查詢?nèi)罩?、二進(jìn)制日志和慢速日志,并詳細(xì)說(shuō)明了前兩個(gè)。這篇文章將更詳細(xì)地介紹二進(jìn)制日志。下篇文章將講第三部分的慢速日志。

    二進(jìn)制日志記錄的語(yǔ)句

    二進(jìn)制日志存儲(chǔ)描述數(shù)據(jù)庫(kù)更改的事件,例如,表創(chuàng)建操作或通過(guò)INSERT和UPDATE等語(yǔ)句更改表數(shù)據(jù)。除了使用基于行的日志記錄之外,還可以為后代保存可能已進(jìn)行更改的語(yǔ)句(例如不匹配任何行的DELETE)的事件(有關(guān)此內(nèi)容的更多信息,請(qǐng)參見(jiàn)下文)。因此,二進(jìn)制日志不包括不修改數(shù)據(jù)的SELECT或SHOW等語(yǔ)句。這些可以在常規(guī)查詢?nèi)罩局姓业健?/p>

    二進(jìn)制日志有兩個(gè)重要目的:

    1. 對(duì)于復(fù)制,主復(fù)制服務(wù)器上的二進(jìn)制日志提供要發(fā)送到從屬服務(wù)器的數(shù)據(jù)更改的記錄。實(shí)際上,主服務(wù)器將其二進(jìn)制日志中包含的事件發(fā)送到其從屬服務(wù)器,以便它們執(zhí)行相同的命令,以實(shí)現(xiàn)與主服務(wù)器上相同的數(shù)據(jù)更改。
    2. 某些數(shù)據(jù)恢復(fù)操作使用二進(jìn)制日志。還原備份后,將重新執(zhí)行與備份相關(guān)的二進(jìn)制日志中的事件,以便將數(shù)據(jù)庫(kù)同步到備份發(fā)生的位置。

    盡管有這些非常重要的用途,但默認(rèn)情況下禁用二進(jìn)制日志記錄,因?yàn)樗鼤?huì)稍微降低性能。但是,二進(jìn)制日志在設(shè)置復(fù)制和從備份還原時(shí)提供的好處通常會(huì)超過(guò)這種輕微的性能損失。

    二進(jìn)制日志格式

    MySQL為二進(jìn)制日志記錄提供了三種日志記錄格式,每種格式都有自己的優(yōu)缺點(diǎn)。與其他日志不同,您無(wú)法使用簡(jiǎn)單的ON / OFF開(kāi)關(guān)啟用它。相反,您必須通過(guò)使用“--binlog-format = type”啟動(dòng)MySQL服務(wù)器來(lái)顯式選擇二進(jìn)制日志記錄格式。每種類型的確切陳述如下所述:

    1. 基于語(yǔ)句

      基于語(yǔ)句的日志記錄記錄所有對(duì)表的數(shù)據(jù)或結(jié)構(gòu)進(jìn)行更改的SQL語(yǔ)句。使用--binlog-format = STATEMENT啟用。
      某些非確定性語(yǔ)句可能不適合復(fù)制。如果MySQL確定是這種情況,它將發(fā)出警告“語(yǔ)句可能不安全登錄語(yǔ)句格式”。
    2. 基于行

      在基于行的日志記錄中,主服務(wù)器將事件寫入二進(jìn)制日志,以指示各個(gè)表行的影響方式。因此,表必須始終包含主鍵以確??梢杂行У刈R(shí)別行。您可以通過(guò)使用--binlog-format = ROW啟動(dòng)它來(lái)告訴服務(wù)器使用基于行的日志記錄。
    3. 混合日志

      第三種選擇是混合日志記錄。使用此日志記錄格式,默認(rèn)情況下使用基于語(yǔ)句的日志記錄,但在某些情況下,日志記錄模式會(huì)自動(dòng)切換到基于行。要使用混合日志記錄,請(qǐng)使用選項(xiàng)--binlog-format = MIXED啟動(dòng)MySQL。

      Navicat

      圖1  -  Navicat Server Monitor工具中的binlog_format服務(wù)器變量

    購(gòu)買Navicat for MySQL正版授權(quán),請(qǐng)點(diǎn)擊“咨詢?cè)诰€客服”喲!

    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级成人熟女影院,欧美午夜成人精品视频,亚洲国产成人乱色在线观看,色中色成人论坛 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();