包含linux下清除mysql日誌的詞條

本文目錄一覽:

linux伺服器無法連接mysql 怎麼清除mysql日誌

連不上,報什麼錯誤?清除日期切換到/var/log/mysql.log下,直接rm -f 強制刪除

Mysql之Linux環境下如何徹底刪除卸載Mysql

1、首先連接操作系統,切換到root用戶。

如果是使用yum安裝的mysql,使用如下命令進行卸載(不能確定使用何種方式安裝的mysql情況下,按後續步驟一一進行處理即可):

# yum remove mysql mysql-server mysql-libs compat-mysql51

# rm -rf /var/lib/mysql

# rm /etc/my.cnf

使用rpm -qa|grep mysql命令來查看rpm方式安裝的mysql,如果查詢結果不為空,需要將這些rpm卸載掉。

2、如果是使用rpm方式安裝的mysql,按如下步驟進行處理:

查看系統中是否以rpm包安裝的mysql:

# rpm -qa | grep -i mysql

使用rpm -e 命令將上個命令中包列表一一進行卸載。

然後刪除mysql相關的服務。

# chkconfig –list | grep -i mysql

# chkconfig –del mysql

3、然後找出OS中分散的mysql文件夾,並刪除。

# find / -name mysql

mysql在linux下日誌滿了怎麼辦

你指的是哪個日誌?

一、

二進位日誌,

辦法1:

PURGE

MASTER

LOGS

TO

『mysql-bin.000021′;

將序號為000021之前的日誌全部刪除

辦法2:

PURGE

MASTER

LOGS

BEFORE

』2010-03-22

00:00:00′;

將日期為2010-03-22之前的日誌刪除

二、慢查,錯誤、無索引日誌等可以直接拷貝到其他目錄,或者手動刪除

linux mysql怎樣查詢刪除的資料

如果你沒開啟日誌記錄,就準備哭吧。

想要恢愎資料庫以前的資料,執行mysqlshow binlog events;

由於數據量很多,查看起來很麻煩,光打開個文件就要閃半天,所以應該適當刪除部分可不用的日誌。

並且如果使用的時間足夠長的話,會把我的硬碟空間都給吃掉

1、登錄系統,/usr/bin/mysql

使用mysql查看日誌

mysqlshow binary logs;

+—————-+———–+

| Log_name | File_size |

+—————-+———–+

| ablelee.000001 | 150462942 |

| ablelee.000002 | 120332942 |

| ablelee.000003 | 141462942 |

+—————-+———–+

2、刪除bin-log(刪除ablelee.000003之前的而沒有包含ablelee.000003)

mysql purge binary logs to ′ablelee.000003′;

Query OK, 0 rows affected (0.16 sec)

3、查詢結果(現在只有一條記錄了)

mysql show binlog events\G

*************************** 1. row ***************************

Log_name: ablelee.000003

Pos: 4

Event_type: Format_desc

Server_id: 1

End_log_pos: 106

Info: Server ver: 5.1.26-rc-log, Binlog ver: 4

1 row in set (0.01 sec)

(ablelee.000001和ablelee.000002已被刪除)

mysql show binary logs;

+—————-+———–+

| Log_name | File_size |

+—————-+———–+

| ablelee.000003 | 106 |

+—————-+———–+

1 row in set (0.00 sec)

(刪除的其它格式運用!)

PURGE {MASTER | BINARY} LOGS TO 『log_name』

PURGE {MASTER | BINARY} LOGS BEFORE 『date』

用於刪除列於在指定的日誌或日期之前的日誌索引中的所有二進位日誌。這些日誌也會從記錄在日誌索引文件

中的清單中被刪除,這樣被給定的日誌成為第一個。

例如:

PURGE MASTER LOGS TO 『mysql-bin.010′;

PURGE MASTER LOGS BEFORE 『2008-06-22 13:00:00′;

清除3天前的 binlog

PURGE MASTER LOGS BEFORE DATE_SUB( NOW( ), INTERVAL 3 DAY);

BEFORE變數的date自變數可以為』YYYY-MM-DD hh:mm:ss』格式。MASTER和BINARY是同義詞。

如果您有一個活性的從屬伺服器,該伺服器當前正在讀取您正在試圖刪除的日誌之一,則本語句不會起作用,

而是會失敗,並伴隨一個錯誤。不過,如果從屬伺服器是休止的,並且您碰巧清理了其想要讀取的日誌之一,則從

屬伺服器啟動後不能複製。當從屬伺服器正在複製時,本語句可以安全運行。您不需要停止它們。

要清理日誌,需按照以下步驟:

1. 在每個從屬伺服器上,使用SHOW SLAVE STATUS來檢查它正在讀取哪個日誌。

2. 使用SHOW MASTER LOGS獲得主伺服器上的一系列日誌。

3. 在所有的從屬伺服器中判定最早的日誌。這個是目標日誌。如果所有的從屬伺服器是更新的,這是清單上的

最後一個日誌。

4. 製作您將要刪除的所有日誌的備份(這個步驟是自選的,但是建議採用)。

5. 清理所有的日誌,但是不包括目標日誌。

下面講一下怎麼從二進位文件恢複數據, 假如不小心執行了drop table xxx_db, 假如你保留了完整的二進位日誌的話, 先不要冒汗, 這是可以恢復的.

先看看日誌

#mysqlbinlog /diskb/bin-logs/xxx_db-bin.000001

找到執行create table xxx_db之後和drop table xxx_db之前的position, 假如是20, 1000

#mysqlbinlog –start-position=”4″ –stop-position=”1000″ /diskb/bin-logs/xxx_db-bin.000001 | mysql -u root

伴隨著一大堆的ERROR 1062 (23000) at line 12355: Duplicate entry ‘139’ for key 1, 資料庫就這樣恢復了, 不過–start-position=”20″是不行的, 必須從–start-position=”4″開始, 為什麼要強制從4開始, 這個問題我也暫時沒有搞清楚.

還有一種辦法是根據日期來恢復

#mysqlbinlog –start-datetime=”2009-09-14 0:20:00″ –stop-datetim=”2009-09-15 01:25:00″ /diskb/bin-logs/xxx_db-bin.000001 | mysql -u root

如果create table xxx_db和drop table xxx_db之間的時間相距是一年, 或者在不同的二進位日誌中, 且位置相距好遠, 就等著失眠吧! 做好備份, 小心操作才是正路啊!

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/254929.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-15 12:14
下一篇 2024-12-15 12:14

相關推薦

  • 如何修改mysql的埠號

    本文將介紹如何修改mysql的埠號,方便開發者根據實際需求配置對應埠號。 一、為什麼需要修改mysql埠號 默認情況下,mysql使用的埠號是3306。在某些情況下,我們需…

    編程 2025-04-29
  • Cron執行日誌用法介紹

    本文將從多個方面對cron執行日誌進行詳細闡述,包括cron執行日誌的定義、cron執行日誌的產生原因、cron執行日誌的格式以及如何解讀cron執行日誌。 一、定義 Cron是一…

    編程 2025-04-29
  • Hibernate日誌列印sql參數

    本文將從多個方面介紹如何在Hibernate中列印SQL參數。Hibernate作為一種ORM框架,可以通過列印SQL參數方便開發者調試和優化Hibernate應用。 一、通過配置…

    編程 2025-04-29
  • Python操作MySQL

    本文將從以下幾個方面對Python操作MySQL進行詳細闡述: 一、連接MySQL資料庫 在使用Python操作MySQL之前,我們需要先連接MySQL資料庫。在Python中,我…

    編程 2025-04-29
  • 使用Snare服務收集日誌:完整教程

    本教程將介紹如何使用Snare服務收集Windows伺服器上的日誌,並將其發送到遠程伺服器進行集中管理。 一、安裝和配置Snare 1、下載Snare安裝程序並安裝。 https:…

    編程 2025-04-29
  • MySQL遞歸函數的用法

    本文將從多個方面對MySQL遞歸函數的用法做詳細的闡述,包括函數的定義、使用方法、示例及注意事項。 一、遞歸函數的定義 遞歸函數是指在函數內部調用自身的函數。MySQL提供了CRE…

    編程 2025-04-29
  • Log4j日誌列印到Systemout.log

    Log4j是Apache的一個強大的日誌組件,可以幫助開發者更好地管理日誌。在Java應用程序中,很多開發者都會選擇使用Log4j來實現日誌輸出。本文將介紹如何使用Log4j將日誌…

    編程 2025-04-28
  • MySQL bigint與long的區別

    本文將從數據類型定義、存儲空間、數據範圍、計算效率、應用場景五個方面詳細闡述MySQL bigint與long的區別。 一、數據類型定義 bigint在MySQL中是一種有符號的整…

    編程 2025-04-28
  • MySQL左連接索引不生效問題解決

    在MySQL資料庫中,經常會使用左連接查詢操作,但是左連接查詢中索引不生效的情況也比較常見。本文將從多個方面探討MySQL左連接索引不生效問題,並給出相應的解決方法。 一、索引的作…

    編程 2025-04-28
  • CentOS 7在線安裝MySQL 8

    在本文中,我們將介紹如何在CentOS 7操作系統中在線安裝MySQL 8。我們會從安裝環境的準備開始,到安裝MySQL 8的過程進行詳細的闡述。 一、環境準備 在進行MySQL …

    編程 2025-04-27

發表回復

登錄後才能評論