首頁 資料庫 mysql教程 mysql binlog日志优化及思路_MySQL

mysql binlog日志优化及思路_MySQL

Jun 01, 2016 pm 01:41 PM
二進位 最佳化 影響 資料庫安裝

bitsCN.com
mysql binlog日志优化及思路 在数据库安装完毕,对于binlog日志参数设置,有一些参数的调整,来满足业务需求或使性能最大化。Mysql日志主要对io性能产生影响,本次主要关注binlog 日志。 查一下二进制日志相关的参数      mysql> show variables like '%binlog%';+--------------------------------+----------------------+ | Variable_name                  | Value                | +--------------------------------+----------------------+ | binlog_cache_size              | 1048576              | | innodb_locks_unsafe_for_binlog | OFF                  | | max_binlog_cache_size          | 18446744073709547520 | | max_binlog_size                | 1073741824           | | sync_binlog                    | 0                    | +--------------------------------+----------------------+5 rows in set (0.14 sec)   其中innodb_locks_unsafe_for_binlog 参数是innodb存储引擎特有的与binlog相关的参数,默认是关闭的 Binlog_cache_size:默认大小是37268即32K.我们计算一下上面binlog_cache_size参数大小,1048576/1024/1024 = 1M,根据事务需要调整大小。次参数表示在事务中容纳二进制日志sql语句的缓存大小。那么怎么理解二进制日志缓存,就是服务器支持事务存储引擎并且服务器启用了二进制日志(-log-bin选项)的前提下为每个客户端分配的内存,是每个client都可以分配设置大小的binlog cache空间。我们可以通过以下两个状态变量判断binlog_cache_size的使用情况: 1  binlog_cache_use: Thenumber of transactions that used the temporary binary log cache.(使用二进制日志缓存的事务的数量)     2   Binlog_cache_disk_use: The number oftransactions that used the binary log cache but that exceeded the value of binlog_cache_size andused a temporary file to store changes from the transaction.  使用二进制日志缓存并且值达到了binlog_cache_size设置的值,用临时文件存储来自事务的变化这样的事务数量 Max_binlog_cache_size: 默认值是18446744073709547520,这个值很大,够我们使用的了。此参数和binlog_cache_size相对应,代表binlog所能使用的cache最大使用大小。如果系统中事务过多,而此参数值设置有小,则会报错。Max_binlog_size: 1073741824=1G  binlog的最大值,一般设置为512M或1G,一般不能超过1G。此参数不能非常严格控制binlog的大小,特别是在遇到大事务时,而binlog日志又到达了尾部,为了保证事务完整性,不切换日志,把所有sql都写到当前日志。这根oracle redo日志有点不一样(感兴趣的可以google)。Mysql记录的是mysql数据库逻辑变化信息,称之为event,实际上就是引起数据库变化的query语句。 Sync_binlog: 参数不仅影响数据库的性能,而且还影响数据库数据的完整性。Sync_binlog参数选项有如下选择   1 Sync_binlog=0,这意味着当事务提交之后,mysql不做fsync(文件系统同步)之类的磁盘同步指令刷新binlog_cache中的信息到磁盘,而让filesystem自行决定什么时候来做同步,或者cache满了之后才同步到磁盘。2 sync_binlog=n,当每进行n次提交之后,mysql将进行一次fsync之类的磁盘同步指令来将binlog_cache中的数据强制写入磁盘。 Sync_binlog=0,这是数据库默认设置,性能也是最好的,也是最危险的。一旦系统crash,在binlog_cache中的所有binlog信息都会被丢失。当synn_binlog=1的时候,是最安全性能消耗也最大,完成一个事务,同步一次。系统crash了,也只是丢掉了未完成的事务信息。没坐过这方面的测试,设置为1和0在性能方面的差距,有做过的说在高并发系统中,两种设置性能可高达5倍甚至更多。  这需要我们来做出选择,是要性能最好,还是最安全。 资料:《mysql性能调优与架构设计》    http://dev.mysql.com/doc/refman/5.0/en/server-status-variables.htmlhttp://dev.mysql.com/doc/refman/5.5/en/server-system-variables.html  作者 aeolus_pu bitsCN.com

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1664
14
CakePHP 教程
1423
52
Laravel 教程
1317
25
PHP教程
1268
29
C# 教程
1246
24
VBOX_E_OBJECT_NOT_FOUND(0x80bb0001)VirtualBox錯誤 VBOX_E_OBJECT_NOT_FOUND(0x80bb0001)VirtualBox錯誤 Mar 24, 2024 am 09:51 AM

在VirtualBox中嘗試開啟磁碟映像時,可能會遇到錯誤提示,指示硬碟無法註冊。這種情況通常發生在您嘗試開啟的VM磁碟映像檔與另一個虛擬磁碟映像檔具有相同的UUID。在這種情況下,VirtualBox會顯示錯誤代碼VBOX_E_OBJECT_NOT_FOUND(0x80bb0001)。如果您遇到這個錯誤,不必擔心,有一些解決方法可以嘗試。首先,您可以嘗試使用VirtualBox的命令列工具來變更磁碟映像檔的UUID,這可以避免衝突。您可以執行命令`VBoxManageinternal

如何關閉抖音評論功能?關閉抖音評論功能後會怎麼樣? 如何關閉抖音評論功能?關閉抖音評論功能後會怎麼樣? Mar 23, 2024 pm 06:20 PM

在抖音平台上,使用者不僅可以分享自己的生活點滴,還可以與其他使用者互動交流。有時候評論功能可能會引發一些不愉快的經歷,如網路暴力、惡意評論等。那麼,如何關閉抖音評論功能呢?一、如何關閉抖音評論功能? 1.登入抖音APP,進入個人首頁。 2.點選右下角的“我”,進入設定選單。 3.在設定選單中,找到「隱私設定」。 4.點選“隱私設定”,進入隱私設定介面。 5.在隱私設定介面,找到「評論設定」。 6.點選“評論設定”,進入評論設定介面。 7.在評論設定介面,找到「關閉評論」選項。 8.點選「關閉評論」選項,確認關閉評論

C++ 程式最佳化:時間複雜度降低技巧 C++ 程式最佳化:時間複雜度降低技巧 Jun 01, 2024 am 11:19 AM

時間複雜度衡量演算法執行時間與輸入規模的關係。降低C++程式時間複雜度的技巧包括:選擇合適的容器(如vector、list)以最佳化資料儲存和管理。利用高效演算法(如快速排序)以減少計算時間。消除多重運算以減少重複計算。利用條件分支以避免不必要的計算。透過使用更快的演算法(如二分搜尋)來優化線性搜尋。

解碼Laravel效能瓶頸:優化技巧全面揭秘! 解碼Laravel效能瓶頸:優化技巧全面揭秘! Mar 06, 2024 pm 02:33 PM

解碼Laravel效能瓶頸:優化技巧全面揭秘! Laravel作為一個受歡迎的PHP框架,為開發者提供了豐富的功能和便利的開發體驗。然而,隨著專案規模增加和訪問量增加,我們可能會面臨效能瓶頸的挑戰。本文將深入探討Laravel效能最佳化的技巧,幫助開發者發現並解決潛在的效能問題。一、資料庫查詢優化使用Eloquent延遲載入在使用Eloquent查詢資料庫時,避免

深度解讀:為何Laravel速度慢如蝸牛? 深度解讀:為何Laravel速度慢如蝸牛? Mar 07, 2024 am 09:54 AM

Laravel是一款廣受歡迎的PHP開發框架,但有時候被人詬病的就是其速度慢如蝸牛。究竟是什麼原因導致了Laravel的速度不盡人意呢?本文將從多個面向深入解讀Laravel速度慢如蝸牛的原因,並結合具體的程式碼範例,幫助讀者更深入地了解此問題。 1.ORM查詢效能問題在Laravel中,ORM(物件關係映射)是一個非常強大的功能,可以讓

Golang的gc優化策略探討 Golang的gc優化策略探討 Mar 06, 2024 pm 02:39 PM

Golang的垃圾回收(GC)一直是開發者關注的熱門話題。 Golang作為一門快速的程式語言,其自帶的垃圾回收器能夠很好地管理內存,但隨著程式規模的增大,有時會出現一些效能問題。本文將探討Golang的GC最佳化策略,並提供一些具體的程式碼範例。 Golang中的垃圾回收Golang的垃圾回收器採用的是基於並發標記-清除(concurrentmark-s

Golang如何讀取二進位檔案? Golang如何讀取二進位檔案? Mar 21, 2024 am 08:27 AM

Golang如何讀取二進位檔案?二進位檔案是以二進位形式儲存的文件,其中包含了電腦能夠識別和處理的資料。在Golang中,我們可以使用一些方法來讀取二進位文件,並將其解析成我們想要的資料格式。以下將介紹如何在Golang中讀取二進位文件,並給出具體的程式碼範例。首先,我們需要使用os包中的Open函數開啟二進位文件,這將會傳回一個文件物件。然後,我們可以使

Laravel效能瓶頸揭秘:優化方案大揭秘! Laravel效能瓶頸揭秘:優化方案大揭秘! Mar 07, 2024 pm 01:30 PM

Laravel效能瓶頸揭秘:優化方案大揭秘!隨著網路技術的發展,網站和應用程式的效能優化變得愈發重要。作為一款流行的PHP框架,Laravel在開發過程中可能會面臨效能瓶頸。本文將探討Laravel應用程式可能遇到的效能問題,並提供一些最佳化方案和具體的程式碼範例,讓開發者能夠更好地解決這些問題。一、資料庫查詢最佳化資料庫查詢是Web應用中常見的效能瓶頸之一。在

See all articles