首頁 資料庫 mysql教程 mysql相关的日志文件_MySQL

mysql相关的日志文件_MySQL

Jun 01, 2016 pm 01:45 PM
mysql

bitsCN.com

 Mysql的日志文件种类比较多,有的日志文件记录了mysql的服务状态以及mysql在工作中产生的系统信息,我们利用这些信息可以更方便的对mysql服务进行运维,但是有的日志文件如果我们进行了不正确的配置将对mysql的服务器主机造成不良的后果,下面我们就来看看mysql有哪些日志文件以及他们的各自的作用。
   Mysql相关的日志文件,主要有两大类:事务日志和事件日志:
【事务日志】
   事务日志:详细的记录了在什么时间发生了什么时候,在哪个时间对哪些数据进行了改变,能后实现事件的重放,一般只记录对数据进行改变的操作,对于读操作一般不进行记录
   事物日志为数据库服务器实现以下功能:
   1、将随机IO转换为顺序IO,大大的提高了数据库的性能,存储的数据可能存在在磁盘的不同位置,降低了数据的读取和操作性能。转换为顺序IO的原理为,先将数据存放在日志文件中,然后由RDBSM的后台将日志中的数据存放到磁盘上,这样就保证了存储的数据是连续的。
   2、为事件重放提供基础,事务日志详细的记录了时间发生的时间以及操作的数据对象,事务进程可以根据这些信息进行时间重放
   默认的事务日志文件有两个,位于数据目录下以ibdata+number结尾的数字,我们可以对事务日志的位置、文件大小、增长方式进行定义,定义的方法如下:
   这里以使用支持事务的Innodb存储引擎为例
   在服务器的主配置文件/etc/my.cnf中:
   innodb_data_home_dir = /innodata  定义存放事务日志的目录
   innodb_data_file_path = ibdata1:1024M  定义日志的名字和大小
   innodb_data_file_path = ibdata2:50M:autoextend  定义日志大小的增长方式
【事件日志】
   事件日志:记录了服务器的历史事件,即在生么时间发生了什么事,其中根据记录内容的不同可以将事件日志分为一下几种:
   1、 the error log错误日志:在对应的数据目录中,以主机名+.err命名的文件。
       错误日志记录的信息类型:
          1、记录了服务器运行中产生的错误信息
          2、记录了服务在启动和停止是所产生的信息
          3、在从服务器上如果启动了复制进程的时候,复制进程的信息也会被记录
       启用错误日志:默认情况下,系统已近将其自动启动
           在主配置文件中:
           log-error= 指定错误日志的位置,这个位置myaql用户必须有写权限,
   2、the binary log二进制日志:默认开启。精确的记录了用户对数据库中的数据进行操作的命令和操作的数据对象。
       二进制日志文件的作用:
          1、提供了增量备份的功能
          2、提供了数据基于时间点的恢复,这个恢复的时间点可以由用户控制
          3、为mysql的复制架构提供基础,将这主服务器的二进制日志复制到从服务器上并执行同样的操作,就可将数据进行同步
       启用:默认在数据目录下以mysql-bin.number命名的文件
          log-bin=  指定二进制日志文件的名字
          log-bin-index= 定义二进制日志文件的名字的索引文件的位置,其用来保存可用的二进制日志文件的名字
       (注:二进制日志文件的删除和一般文件的删除是不同的,我们可以采用以下的方法
         PURAGE BINARYLOGS BEFORE ‘mysql-bin.00001’清除某个二进制日志文件之前的二进制日志文件
         PURAGE BINARYLOGS BEFORE ‘2011-3-5 23:00:00'清除某个时间点之前的所有二进制日志的记录
   3、the general query log查询日志:对除了慢查日志中记录的查询信息都将记录下来,这将对服务器主机产生大量的压力,所以对于繁忙的服务器应该关闭这个日志
       启用和关闭的方法:
       在主配置文件中:
       general_log=[ON/OFF]
       log_output=指定存放查询日志的位置,可以放在文件中,也可以放在数据库的表中,放在表中比放在文件中更容易查看
  
   4、the slow query log慢查日志:默认为关闭状态,记录下来查询时间超过设定时长的查询,这些查询日志将被慢查日志记录下来
       在主配置文件中配置:
       通过long_query_time=num 定义默认的时长,默认时长为10秒
       在配置文件中启用:
       slow_query_log=ON
       slow_query_log_file= 指定慢查日志的位置及名字
       在mysql中启用的方法:
       mysql>SET GLOBAL slow_query_log=ON
  
   5、the relay log中继日志,主要是在mysql服务器的中从架构中的从服务器上用到的,当从服务器想要和主服务器进行数据的同步时,从服务器将主服务器的二进制日志文件拷贝到己的主机上放在中继日志中,然后调用SQL线程按照拷中继日志文件中的二进制日志文件执行以便就可达到数据的同步。
      开启的方法:(只在从服务器上开启)
      配置mysql的主配置文件:
      relay-log=  指定中继日志的位置和名字
      relay-log-index=  指定中继日志的名字的索引文件的位置和名字
     
   6、the ratationg logs 滚动日志,只要是针对二进制日志进行滚动的,对某个类型的日志文件滚动一次就生成一个新的相对应的日志文件,通过这种方法保证日志文件的特定大小,从而保证服务器在对日志文件查询时有较高的响应能力
       滚动二进制日志的命令:FLUSH LOGS
事务日志和二进制日志文件的区别:
      两者都能够实现对数据操作的还原,但是前者的还原操作都是有系统自动完成的,不需要也不允许人为进行干预,而后者的恢复是完全依靠人为进行的。 
 
作者 “redhat”

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脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
威爾R.E.P.O.有交叉遊戲嗎?
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

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

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

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

mysql:簡單的概念,用於輕鬆學習 mysql:簡單的概念,用於輕鬆學習 Apr 10, 2025 am 09:29 AM

MySQL是一個開源的關係型數據庫管理系統。 1)創建數據庫和表:使用CREATEDATABASE和CREATETABLE命令。 2)基本操作:INSERT、UPDATE、DELETE和SELECT。 3)高級操作:JOIN、子查詢和事務處理。 4)調試技巧:檢查語法、數據類型和權限。 5)優化建議:使用索引、避免SELECT*和使用事務。

phpmyadmin怎麼打開 phpmyadmin怎麼打開 Apr 10, 2025 pm 10:51 PM

可以通過以下步驟打開 phpMyAdmin:1. 登錄網站控制面板;2. 找到並點擊 phpMyAdmin 圖標;3. 輸入 MySQL 憑據;4. 點擊 "登錄"。

MySQL:世界上最受歡迎的數據庫的簡介 MySQL:世界上最受歡迎的數據庫的簡介 Apr 12, 2025 am 12:18 AM

MySQL是一種開源的關係型數據庫管理系統,主要用於快速、可靠地存儲和檢索數據。其工作原理包括客戶端請求、查詢解析、執行查詢和返回結果。使用示例包括創建表、插入和查詢數據,以及高級功能如JOIN操作。常見錯誤涉及SQL語法、數據類型和權限問題,優化建議包括使用索引、優化查詢和分錶分區。

為什麼要使用mysql?利益和優勢 為什麼要使用mysql?利益和優勢 Apr 12, 2025 am 12:17 AM

選擇MySQL的原因是其性能、可靠性、易用性和社區支持。 1.MySQL提供高效的數據存儲和檢索功能,支持多種數據類型和高級查詢操作。 2.採用客戶端-服務器架構和多種存儲引擎,支持事務和查詢優化。 3.易於使用,支持多種操作系統和編程語言。 4.擁有強大的社區支持,提供豐富的資源和解決方案。

redis怎麼使用單線程 redis怎麼使用單線程 Apr 10, 2025 pm 07:12 PM

Redis 使用單線程架構,以提供高性能、簡單性和一致性。它利用 I/O 多路復用、事件循環、非阻塞 I/O 和共享內存來提高並發性,但同時存在並發性受限、單點故障和不適合寫密集型工作負載的局限性。

MySQL和SQL:開發人員的基本技能 MySQL和SQL:開發人員的基本技能 Apr 10, 2025 am 09:30 AM

MySQL和SQL是開發者必備技能。 1.MySQL是開源的關係型數據庫管理系統,SQL是用於管理和操作數據庫的標準語言。 2.MySQL通過高效的數據存儲和檢索功能支持多種存儲引擎,SQL通過簡單語句完成複雜數據操作。 3.使用示例包括基本查詢和高級查詢,如按條件過濾和排序。 4.常見錯誤包括語法錯誤和性能問題,可通過檢查SQL語句和使用EXPLAIN命令優化。 5.性能優化技巧包括使用索引、避免全表掃描、優化JOIN操作和提升代碼可讀性。

MySQL的位置:數據庫和編程 MySQL的位置:數據庫和編程 Apr 13, 2025 am 12:18 AM

MySQL在數據庫和編程中的地位非常重要,它是一個開源的關係型數據庫管理系統,廣泛應用於各種應用場景。 1)MySQL提供高效的數據存儲、組織和檢索功能,支持Web、移動和企業級系統。 2)它使用客戶端-服務器架構,支持多種存儲引擎和索引優化。 3)基本用法包括創建表和插入數據,高級用法涉及多表JOIN和復雜查詢。 4)常見問題如SQL語法錯誤和性能問題可以通過EXPLAIN命令和慢查詢日誌調試。 5)性能優化方法包括合理使用索引、優化查詢和使用緩存,最佳實踐包括使用事務和PreparedStatemen

SQL刪除行後如何恢復數據 SQL刪除行後如何恢復數據 Apr 09, 2025 pm 12:21 PM

直接從數據庫中恢復被刪除的行通常是不可能的,除非有備份或事務回滾機制。關鍵點:事務回滾:在事務未提交前執行ROLLBACK可恢復數據。備份:定期備份數據庫可用於快速恢復數據。數據庫快照:可創建數據庫只讀副本,在數據誤刪後恢復數據。慎用DELETE語句:仔細檢查條件,避免誤刪數據。使用WHERE子句:明確指定要刪除的數據。使用測試環境:在執行DELETE操作前進行測試。

See all articles