mysql日志(介紹 路徑修改 備份)

2019獨角獸企業重金招聘Python工程師標準>>> hot3.png

環境:senos6

軟件:mysql2.6.20

mysql日志:
??? 錯誤日志

??? 一般查詢日志

??? 慢查詢日志

??? 二進制日志
??????? 只記錄DDL,DML等引起數據庫改變的操作都會記錄下來
??????? 復制,即時點恢復

??? 中繼日志

??? 事務日志
??????? 只是滿足acid要求來做的
??? innodb才有事務日志

?? ?
??? 錯誤日志:
??????? mysql數據庫啟動記錄也會在錯誤日志中
??????? mysql服務器運行中產生的錯誤信息
??????? 時間調度器運行一個時間產生的信息
??????? log_error| /mydata/data/openvpn.err
??? 一般查詢日志:
??????? general_log???? | OFF # 建議關閉 因數據量太大,可以查詢慢日志。系統默認關閉!
??????? general_log_file| /mydata/data/openvpn.log
??????? log_output| [FILE|TABLES|NONE]
??? 一般文件類的修改必須寫在配置文件中,并重啟mysql數據庫服務器
??? 二進制日志(建議開啟。作用很大!):
??????? binlog_max_flush_queue_time | 0
??????? 不刷新二進制日志
??????? log_bin???????????????????? | OFF
????? ?
????? 開啟的方法:vim /etc/my.cnf
??????? [mysqld]下添加一下內容:
??????? log_bin = mysql-bin
??????? 開啟二進制日志
??? 如果要滾動二進制文件:1.重啟mysql
????????????????????????? 2.mysql>flush logs

??? 慢日志:
??????? slow_query_log????? | OFF
??????? slow_query_log_file | /mydata/data/openvpn-slow.log

?

??? 查看mysql中和日志相關選項
??? show global variables like '%log%'

??? 查看二進制日志相關信息
??? mysql>show master status
??? mysql>show binary logs
??? mysql>show binlog events in '二進制日志文件'
??? mysql>purge binary logs to '二進制日志文件'
??? mysql>flush logs 滾動二進制日志文件
??? mysqlbinlog用于查看二進制日志信息
??????? --start-datetime
??????? --stpo-datetime

??????? --start-position
??????? --stop-position
??? mysqlbinlog mysql-bin.000001 > 1.sql 把二進制日志文件轉為sql?? 二進制日志轉換成SQL語句后可以導入mysql里面進行數據恢復,作用很大。

?

mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File???????????? | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000001 |????? 375 |????????????? |????????????????? |?????????????????? |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

顯示當前使用的二進制文件和文件中的位置
mysql> show binary logs;
+------------------+-----------+
| Log_name???????? | File_size |
+------------------+-----------+
| mysql-bin.000001 |?????? 375 |
+------------------+-----------+
1 row in set (0.00 sec)


mysql> show binlog events in 'mysql-bin.000001';
+------------------+-----+-------------+-----------+-------------+-----------------------------------------------------+
| Log_name???????? | Pos | Event_type? | Server_id | End_log_pos | Info??????????????????????????????????????????????? |
+------------------+-----+-------------+-----------+-------------+-----------------------------------------------------+
| mysql-bin.000001 |?? 4 | Format_desc |???????? 1 |???????? 120 | Server ver: 5.6.20-log, Binlog ver: 4?????????????? |
| mysql-bin.000001 | 120 | Query?????? |???????? 1 |???????? 199 | BEGIN?????????????????????????????????????????????? |
| mysql-bin.000001 | 199 | Intvar????? |???????? 1 |???????? 231 | INSERT_ID=1???????????????????????????????????????? |
| mysql-bin.000001 | 231 | Query?????? |???????? 1 |???????? 344 | use `up01`; insert into up01(name) values ('aaaaa') |
| mysql-bin.000001 | 344 | Xid???????? |???????? 1 |???????? 375 | COMMIT /* xid=24 */???????????????????????????????? |
+------------------+-----+-------------+-----------+-------------+-----------------------------------------------------+
5 rows in set (0.00 sec)

mysql> show binlog events in 'mysql-bin.000001' from 199;
+------------------+-----+------------+-----------+-------------+-----------------------------------------------------+
| Log_name???????? | Pos | Event_type | Server_id | End_log_pos | Info??????????????????????????????????????????????? |
+------------------+-----+------------+-----------+-------------+-----------------------------------------------------+
| mysql-bin.000001 | 199 | Intvar???? |???????? 1 |???????? 231 | INSERT_ID=1???????????????????????????????????????? |
| mysql-bin.000001 | 231 | Query????? |???????? 1 |???????? 344 | use `up01`; insert into up01(name) values ('aaaaa') |
| mysql-bin.000001 | 344 | Xid??????? |???????? 1 |???????? 375 | COMMIT /* xid=24 */???????????????????????????????? |
+------------------+-----+------------+-----------+-------------+-----------------------------------------------------+
3 rows in set (0.00 sec)

??? 中繼日志:
??????? 從服務器上,從主服務器的二進制日志文件中復制而來的事件

??? 事務日志:
??????? 僅僅滿足事務acid要求
??????? 不能單獨用來直接進行還原
??????? innodb_flush_log_at_trx_commit| [0,1,2]
??????? 0:每秒同步,并執行磁盤flush
??????? 1:每事務同步,并執行磁盤flush
??????? 2:每事務同步,但不執行磁盤flush,而是由操作系統絕對何時進行磁盤flush

??????? innodb_log_buffer_size 緩存大小
??????? innodb_log_file_size 日志大小
??????? innodb_log_files_in_group 事務日志中每組里面有多少個文件
??????? innodb_mirrored_log_groups有多少個事務日志的鏡像


??????? expire_logs_days 設定二進制日志文件過期天數
??????? general_log 是否啟用一般查詢日志
??????? general_log_file 一般查詢日志存儲路徑

??????? binlog_format 設定二進制日志的類型
??????? stateamment|row|mixed

??????? log-bin是否啟用二進制日志文件(名稱)
??????? sql_log_bin是否啟用二進制日志文件

?????? ?
??????? slow_query_log是否開啟慢日志查詢
??????? slow_query_log_file慢日志文件存儲路徑

??????? log_warnings把告警信息也放在錯誤日志當中
??????? long_query_time=# 設定慢日志超時時間默認10s
??????? sync_binlog 同步二進制日志文件

myisam:
??? 不支持事務
??? 表鎖
??? 支持表壓縮
??? 表格式:frm,myd,myi
??? 對于讀比較多的數據庫可以選擇myisam存儲引擎
innodb:
??? 支持事務
??? 行鎖
??? 表空間
??? 表格式:frm,idb
??? 對于讀寫操作都相當數據庫可以選擇innodb存儲引擎
CSV:
??? 把數據存為一定格式的文本文件

ARCHIVE:
??? 歸檔存儲引擎
??????? 實際使用較少,主要用于數據挖掘
MEMORY:
??? 內存型數據存儲引擎

BLACKHOLE:
??? 黑洞存儲引擎

mysql備份和還原:
??? 備份:
??????? raid0,raid1:這個方式只能保證硬件故障之后不會中斷業務
??????? drop table ....邏輯上的刪除他不能恢復


??? 50G
??????? copy

??? 服務器是否在線:
??????? 熱備:在線備份,讀寫操作都可執行
??????? 溫備:能讀不能寫
??????? 冷備:離線備份,讀寫都不可操作

??? 物理備份:拷貝數據庫實際在系統中產生數據文件,速度快
??? 邏輯備份:將數據導出至文本文件中,速度慢,移植性好

??? 完全備份:備份所有數據
??? 增量備份:僅僅備份上次完全備份或增量備份以后變化的數據
??? 差異備份:僅僅備份上次完全備份以來變化的數據

備份什么:
??? 數據,配置文件,備份二進制日志,事務日志

還原:
??? 備份最好拿來還原測試以下,保證備份可用,并有還原方案


熱備:
??? myisam表進行熱備幾乎不可能,接近熱備,使用快照,不然只能使用溫備
??? innodb表可以使用xtrabackup,mysqldump
??? mysql---->從


備份策略:
??? 完全+增量 完全+差異(差異備份:一般使用

??????? mysqlbinlog
??????? --start-datetime
??????? --stpo-datetime

??????? --start-position
??????? --stop-position

??? 還原時長需要考慮

mysql備份工具:
??? mysqldump 邏輯備份工具
??? mysqlhotcopy物理備份工具,會鎖表,溫備

文件系統工具:
??? cp
??? 快照

innodb:
??? ibbackup(圖形化操作軟件)
??? xtrabackup(圖形化操作軟件)

mysqldump:
??? 進行完全備份+二進制日志
??? 完全+增量(需要手動進入mysql界面使用:flush logs;)

?

mysqldump db_name [tb1] [tb2]??????????? # 默認不會備份創建數據庫的sql語句

備份步驟:
mysql>flush tables with read lock;?? #鎖表(建議鎖住所有表,可以防止表表之間的關聯關系)
mysqldump -uroot -p123456 db_name > file.sql? #備份
mysqldump -uroot -p123456 db_name tb_name tb_name > file.sql?? #備份

mysql>unlock tables?? #解鎖表

--master-data=0|1|2
0:不記錄二進制日志文件極其事件位置
1:以change master to方式記錄位置,可以用于恢復后直接啟動從服務器
2:以change master to方式記錄位置,默認為注釋

--lock-all-tables#所定所有表
--lock-tables#鎖表
--flush-logs#二進制日志文件滾動
--single-transaction#如果你確定你所有的表都所innodb存儲引擎的就可以使用此選項完成innodb的熱備

--all-databases備份所有數據庫
--databases備份單庫
備份的時候同時備份創建數據庫sql

--routines備份存儲過程和函數的

--triggers備份觸發器的

myisam:
mysqldump -uroot -p456789 --lock-all-tables(鎖住所有表) --flush-logs (滾動二進制日志)--all-databases(備份所有庫) --master-data=2 (方式記錄位置,默認為注釋)>file.sql?? (完全備份)


innodb熱備:(熱備不許要鎖表)
mysqldump -uroot -p456789 --single-transaction --master-data=2 --all-databases > file.sql

備份還原:
??? mysql>source /path/file.sql ????
??? mysql -uroot -p < /path/file.sql
??? password:
??? 以上備份文件是包含了創建數據庫的sql語句

??? mysql>create database db_name
??? mysql>use db_name;
??? mysql>source /path/file.sql
?? ?
??? mysql -uroot -p -D db_name < /path/file.sql
??? 以上備份文件是沒有包含創建數據庫的sql語句

快速備份單表:
??? mysql>select * into outfile '/path/file' from tb_name

快速還原單表:
??? mysql>load data infile '/path/file' into table tb_name

lvm:使用快照的方式進行備份主要是用于myisam的幾乎熱備
??? 前提:
??????? 數據文件在邏輯卷上
??????? 此邏輯卷必須要有足夠的空間來存儲快照
??????? 數據文件和事務日志必須在同一個邏輯卷上
??? 步湊:
??????? 1.打開會話,添加所有表的鎖操作,讀鎖
????????? mysql>flush tables with read lock;
????????? mysql>flush logs
??????? 2.通過另一給終端,保存二進制日志文件及其位置信息
????????? mysql -uroot -p123456 -e "show master status\G" >> /path/file
??????? 3.創建快照卷
????????? lvcreate -L # -s -p -n LV_NAME /path/to/source_lv
??????? 4.釋放鎖
????????? mysql>unlock tables

??????? 5.掛載快照卷,備份
????????? mount
????????? cp

??????? 6.刪除快照卷

??????? 7.增量備份二進制日志

復制:
?? mysql ab復制
??? mysql server1----U,D,T------>mysql server2
?? 原理:
??? 當主庫有更新操作的時候,主庫會把更新操作的sql,寫如到二進制日志文件當中,并維護一個二進制日志文件的索引文件,以便日志文件輪詢
??? 在從庫啟動異步復制的時候,從庫會開啟兩個I/O線程
??? 其中一個用于連接主庫
??? 另外一個用于傳輸sql

注意:
??? 必須打開二進制日志文件
??? 從庫必須知道主庫是從那一給位置偏移量開始的
??? 主庫和從庫的數據庫名稱可以不一樣,推薦使用一樣
??? 主庫和從庫的mysql版本必須一致
192.168.1.1:master
192.168.1.2:slave


vim /etc/my.cnf
master:
???? log-bin??? = mysql-bin
???? relay-log? = mysql-relay-bin
???? server-id? = 1
???? binlog-do-db= up01
???? binlog-ignore-db = mysql
???? binlog-ignore-db = test
slave:
??? log-bin = mysql-bin
??? relay-log = mysql-relay-bin
??? server-id = 2
??? master-host=192.168.1.1
??? master-port=3306
??? master-user=repl
??? master-password=repl
??? master-connect-retry=30
??? replicate-do-db=up01
??? replicate-ingore-db=mysql
??? replicate-ingore-db=test

轉載于:https://my.oschina.net/hdlp520/blog/785337

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/397440.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/397440.shtml
英文地址,請注明出處:http://en.pswp.cn/news/397440.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Sort

<?xml version"1.0" encoding"utf-8"?> SortSort 1 Sort Select sort is the simplest sorting alogrithms. 1.1 IDEA 1.find the smallest element in the rest of array 2.exchange the element with with the i th entry. 3.repeat step1 and s…

a標簽實現不跳轉點擊

<a class"tiao" href"./index.php"></a> JS實現無跳轉a標簽 <script type"text/javascript"> $(".tiao").click(function (){return false; }) </script> 轉載于:https://www.cnblogs.com/wenhainan/p/…

linux下的c語言控制燈閃爍,C語言實現LED燈閃爍控制

原標題&#xff1a;C語言實現LED燈閃爍控制/********* 配套 **********/#include //包含 寄存器的頭文件/****************************************函數功能&#xff1a;延時一段時間*****************************************/void delay(void) //兩個void意思分別為無需返回…

VBA and Access

>>.用vba連接ACESS&#xff1a; Set Conn Server.CreateObject("ADODB.Connection") Conn.ConnectionString"ProviderMicrosoft.Jet.OLEDB.4.0;Data Source" & Server.MapPath("sample.mdb") Conn.Open>>.用vba連接EXCEL,打開EX…

溫州大學c語言作業布置的網站,老師APP上布置作業 三年級娃為刷排名半夜做題_央廣網...

在溫州讀小學三年級的皮皮(化名)&#xff0c;因為學習需要&#xff0c;在媽媽黃女士的手機里安裝了5個APP學習軟件。有數學速算的&#xff0c;英語配音的&#xff0c;還有語文復習的。這些軟件&#xff0c;都是班上的老師推薦安裝的。每天放學回家&#xff0c;皮皮就拿著黃女士…

Algorithm I assignment Collinear

這本來應該是第三周的作業&#xff0c;但是由于其他作業逼近deadline&#xff0c;暫時推后了一周完成。 這周的assignment大大提高了我對這門課的看法&#xff0c;不得不說&#xff0c;Algorithms這門課的assignment部分設計得很好。為什么好&#xff1f;個人認為有以下幾點&am…

vc c語言坐標圖,VC++6.0下C語言畫圖編程問題

復制內容到剪貼板代碼:#include#includevoid CSinusoidView::OnDraw(CDC* pDC){CSinusoidDoc* pDoc GetDocument();ASSERT_VALID(pDoc);// TODO: add draw code for native data here//建立畫筆CPen cpen,pen;pen.CreatePen(PS_SOLID,4,RGB(0,0,0));cpen.CreatePen(PS_SOLID,2…

Java BigDecimal詳解

1.引言 float和double類型的主要設計目標是為了科學計算和工程計算。他們執行二進制浮點運算&#xff0c;這是為了在廣域數值范圍上提供較為精確的快速近似計算而精心設計的。然而&#xff0c;它們沒有提供完全精確的結果&#xff0c;所以不應該被用于要求精確結果的場合。但是…

Erlang庫 -- 有意思的庫匯總

抄自這里 首先&#xff0c;庫存在的目的大致可分為&#xff1a;1、提供便利2、盡可能解決一些痛點首先&#xff0c;我們先明確一下Erlang編程語言的一些痛點&#xff08;偽痛點&#xff09;&#xff1a;1&#xff0c;單進程問題Erlang虛擬機屬于搶占式調度&#xff0c;搶占式調…

windows 串口編程 c語言,windows下C語言版串口發送程序(基于VS2017)

#include "tchar.h"#include int main(){/*****************************打開串口*************************************/HANDLE hCom;//全局變量&#xff0c;串口句柄hCom CreateFile(_T("COM3"),//COM3口GENERIC_READ | GENERIC_WRITE,//允許讀和寫0,/…

scikit-learn決策樹算法類庫使用小結

之前對決策樹的算法原理做了總結&#xff0c;包括決策樹算法原理(上)和決策樹算法原理(下)。今天就從實踐的角度來介紹決策樹算法&#xff0c;主要是講解使用scikit-learn來跑決策樹算法&#xff0c;結果的可視化以及一些參數調參的關鍵點。 1. scikit-learn決策樹算法類庫介紹…

3.js模式-策略模式

1. 策略模式 策略模式定義一系列的算法&#xff0c;把它們封裝起來&#xff0c;并且可以互相替換。 var strategies { isNonEmpty: function(value,errMsg){ if(value ){ return errMsg; } }, minLength:function(value,length,errMsg){ if(value.length < length){ retur…

c語言編寫程序求8,使用c語言編寫程式,實現計算1*2*3+4*5*6+7*8*9+……+28*29*30的值...

使用c語言編寫程式&#xff0c;實現計算1*2*34*5*67*8*9……28*29*30的值以下文字資料是由(歷史新知網www.lishixinzhi.com)小編為大家搜集整理后發布的內容&#xff0c;讓我們趕快一起來看一下吧&#xff01;使用c語言編寫程式&#xff0c;實現計算1*2*34*5*67*8*9……28*29*3…

PHP 正則表達式分割 preg_split 與 split 函數

為什么80%的碼農都做不了架構師&#xff1f;>>> preg_split() preg_ split() 函數用于正則表達式分割字符串。 語法&#xff1a; array preg_split( string pattern, string subject [, int limit [, int flags]] ) 返回一個數組&#xff0c;包含 subject 中沿著與…

簡單學C——第五天

結構體 首先明確&#xff0c;結構體是一種構造的數據類型&#xff0c;是一種由多個數據類型如 int&#xff0c;char&#xff0c;double&#xff0c;數組或者結構體......組成的類型,現在告訴大家如何定義一個結構體。在定義int整型變量時&#xff0c;大家肯定都知道 int a; 即…

C語言二叉樹實驗報告流程圖,二叉樹的建立與遍歷實驗報告(c語言編寫,附源代碼).doc...

二叉樹的建立與遍歷實驗報告(c語言編寫,附源代碼).doc第 1 頁&#xff0c;共 9 頁二叉樹的建立與遍歷實驗報告級 班 年 月 日 姓名 學號_ 1實驗題目建立一棵二叉樹&#xff0c;并對其進行遍歷(先序、中序、后序)&#xff0c;打印輸出遍歷結果。2需求分析本程序用 VC 編寫&#…

三角函數泰勒展開C語言,第六章-函數作業 ---三角函數泰勒級數展開式計算正弦函數值...

E201_06_02_正弦函數題目要求&#xff1a;按照三角函數泰勒級數展開式計算正弦函數值&#xff1a;,直到最后一項的絕對值小于106解題思路&#xff1a;1. 輸入弧度2. 確定初始化值3. 求階梯函數代碼&#xff1a;public class E201_06_02_正弦函數 {public static void main(Stri…

Codeforces Round #325 (Div. 2) B. Laurenty and Shop 前綴和

B. Laurenty and Shop Time Limit: 1 Sec Memory Limit: 256 MB 題目連接 http://codeforces.com/contest/586/problem/BDescription A little boy Laurenty has been playing his favourite game Nota for quite a while and is now very hungry. The boy wants to make sau…

python學習感悟第3節

在繼列表的學習之后&#xff0c;進行了元組的學習。元組和列表功能相似&#xff0c;只是元組不能進行修改&#xff0c;所以元組又叫只讀列表。 下面列舉的是一系列的字符串操作&#xff1a; name.capitalize() #首字母大寫 name.count("a") #數列表中有幾個a name…

MyBatis_ibatis和mybatis的區別【轉】

1. ibatis3.*版本以后正式改名為mybaits&#xff0c;它也從apache轉到了google code下&#xff1b;也就是說ibatis2.*&#xff0c;mybatis3.*。2. 映射文件的不同ibatis的配置文件如下<?xml version"1.0" encoding"UTF-8" ?><!DOCTYPE sqlMapCo…