操屁眼的视频在线免费看,日本在线综合一区二区,久久在线观看免费视频,欧美日韩精品久久综

新聞資訊

    一、MySQL日志管理

    MySQL 的日志默認保存位置為/usr/local/mysql/data

    MySQL 的日志配置文件為/etc/f,里面有個[]項。

    這是我們當時安裝mysql時指定的目錄,如下圖所示:

    1.1 日志的分類1)錯誤日志

    用來記錄當MySQL啟動、停止或運行時發生的錯誤信息,默認已開啟

    log-error=/usr/local/mysql/data/.log#指定日志的保存位置和文件名

    2) 通用查詢日志

    用來記錄MySQL的所有連接和語句,默認是關閉的

    =ON

    =/usr/local/mysql/data/.log

    3) 二進制日志()

    用來記錄所有更新了數據或者已經潛在更新了數據的語句,記錄了數據的更改,可用于數據恢復,默認已開啟

    log-bin=mysql-bin#也可以 =mysql-bin

    4) 慢查詢日志

    用來記錄所有執行時間超過秒的語句,可以找到哪些查詢語句執行時間長備份數據庫有哪些方法,以便于優化,默認是關閉的

    =ON

    =/usr/local/mysql/data/.log

    =5#設置超過5秒執行的語句被記錄,缺省時為10秒

    5) 配置日志

    1)修改my,cof配置文件

    2)重新mysql服務

    1.2 日志的查詢

    mysql -u root -p[密碼]

    show like '%';#查看通用查詢日志是否開啟

    show like '%';#查看二進制日志是否開啟

    show like '%slow%';#查看慢查詢日功能是否開啟

    show like '';#查看慢查詢時間設置

    set =ON;#在數據庫中設置開啟慢查詢的方法

    查詢各日志的開啟狀態(未設置之前)

    查詢各日志的開啟狀態(設置之后)

    二、MySQL 完全備份與恢復2.1 數據備份的重要性

    備份的主要目的是災難恢復

    在生產環境中,數據的安全性至關重要

    任何數據的丟失都可能產生嚴重的后果

    oracle全庫備份_備份數據庫有哪些方法_mysql 整庫備份

    2.2 造成數據丟失的原因

    程序錯誤

    人為操作錯誤.

    運算錯誤

    磁盤故障

    災難(如火災、地震)和盜竊

    2.3 數據庫備份的分類

    2.3.1 從物理和邏輯角度分

    1)物理備份

    對數據庫操作系統的物理文件(如數據文件、日志文件等)的備份

    物理備份的方法:

    冷備份(脫機備份) :是在關閉數據庫的時候進行的;

    熱備份(聯機備份) :數據庫處于運行狀態,依賴于數據庫的日志文件;

    溫備份:數據庫鎖定表格(不可寫入但可讀)的狀態下進行備份操作。

    2)邏輯備份

    對數據庫邏輯組件(如:表等數據庫對象)的備份

    2.4 數據庫的備份策略

    完全備份:每次對數據庫進行完整的備份

    是對整個數據庫、數據庫結構和文件結構的備份

    保存的是備份完成時刻的數據庫

    是差異備份與增量備份的基礎

    優點:備份與恢復操作簡單方便

    缺點:數據存在大量的重復、占用大量的備份空間及備份與恢復時間長

    差異備份:備份自從上次完全備份之后被修改過的文件

    增量備份:只有在上次完全備份或者增量備份后被修改的文件才會被備份

    use ;

    table if not info1 (

    id int(4) not null ,

    name (10) not null,

    sex char(10) not null,

    hobby (50),

    key (id));

    into info1 (1,'user1','male','');

    into info1 (2,'user2','','');

    2.5 MySQL 完全備份

    存儲引擎的數據庫在磁盤上存儲成三個文件:db.opt(表屬性文件)、表名.frm(表結構文件)、表名.ibd(表數據文件)。

    實驗環境如下:在庫中有clss1、2、3張表

    備份數據庫有哪些方法_mysql 整庫備份_oracle全庫備份

    2.5.1 物理冷備份與恢復

    備份時數據庫處于關閉狀態,直接打包數據庫文件

    備份速度快,恢復時也是最簡單的

    操作步驟(理論):

    stop

    yum -y xz

    cd /usr/local/mysql

    #壓縮備份data目錄

    tar Jcvf /opt/$(date +%F).tar.xz data/

    #解壓恢復data目錄

    tar Jxvf /opt/-06-26.tar.xz -C ./

    實驗操作步驟(實操):

    1)備份data命令

    2)登錄mysql,刪除庫

    3)解壓之前備份的數據庫data目錄,不用刪除原目錄,會自動替換

    4)重啟服務查看被刪除的庫

    2.1.2 專用備份工具 和

    常用的邏輯備份工具

    僅擁有備份和表

    (1)完全備份一個或多個完整的庫(包括其中所有的表)

    -u root -p[密碼] -- 庫名1 [庫名2] … > /備份路徑/備份文件名.sql#導出的就是數據庫腳本文件

    例:備份單個和多個庫

    -uroot -p -- > /opt//.sql

    -uroot -p -- bank > /opt//.sql

    (2)完全備份 MySQL 服務器中所有的庫

    -u root -p[密碼] --all- > /備份路徑/備份文件名.sql

    例:備份所有庫

    -uroot -p --all- > /opt//all.sql

    (3)完全備份指定庫中的部分

    -u root -p[密碼] 庫名 [表名1] [表名2] … > /備份路徑/備份文件名.sql

    例:備份庫中的兩個表

    -uroot -p [-d] > /opt//.sql

    #使用“-d”選項備份數據庫有哪些方法,說明只保存數據庫的表結構

    #不使用“-d”選項,說明表數據也進行備份

    備份數據庫有哪些方法_oracle全庫備份_mysql 整庫備份

    (4)查看備份文件

    grep -v "^--" /opt/mysql_bak/school_class1_class2.sql | grep -v "^/" | grep -v "^$"

    2.1.3 MySQL 完全備份(使用免交互)

    start

    (1)恢復數據庫

    mysql -u root -p -e 'drop ;'

    #“-e”選項,用于指定連接 MySQL 后執行的命令,命令執行完后自動退出

    mysql -u root -p -e 'show ;'

    #恢復數據庫

    mysql -u root -p < /opt//.sql

    mysql -u root -p -e 'show ;'

    具體操作:

    (2)恢復數據表

    當備份文件中只包含表的備份,而不包含創建的庫的語句時,執行導入操作時必須指定庫名,且目標庫必須存在。

    -u root -p kgc info1 > /opt/.sql

    mysql -u root -p -e 'drop table 1;'

    mysql -u root -p -e 'show from kgc;'

    mysql -u root -p kgc < /opt/.sql

    mysql -u root -p -e 'show from kgc;'

    具體操作:

    1)刪除中的表

    2)恢復庫中的表

    2.1.4 MySQL 增量備份與恢復

    1.開啟二進制日志功能

    vim /etc/f

    []

    log-bin=mysql-bin

    = MIXED指定二進制日志()的記錄格式為 MIXED

    -id = 1

    二進制日志()有3種不同的記錄格式:

    (基于SQL語句)

    ROW(基于行)

    MIXED(混合模式),默認格式是

    oracle全庫備份_備份數據庫有哪些方法_mysql 整庫備份

    只要重啟就會自動生成二進制文件

    start

    ls -l /usr/local/mysql/data/mysql-bin.*

    2.可每周對數據庫或表進行完全備份

    -u root -p > /opt/$(date +%F).sql #對指定的表做備份

    -u root -p --all- > /opt/$(date +%F).sql

    3.可每天進行增量備份操作,生成新的二進制日志文件(例如 mysql-bin.)

    mysqladmin -u root -p flush-logs

    4.插入新數據,以模擬數據的增加或變更

    use ;

    into (6,'小紫','女',25,'167','安徽合肥');

    into (7,'小黃','男',19,'187',(江蘇無錫));

    5.再次生成新的二進制日志文件(例如 mysql-bin.)

    mysqladmin -u root -p flush-logs

    #之前的步驟4的數據庫操作會保存到mysql-bin.文件中,之后數據庫數據再發生變化則保存在mysql-bin.文件中

    6.查看二進制日志文件的內容

    cp /usr/local/mysql/data/mysql-bin. /opt/

    --no- ---=-rows -v /opt/mysql-bin.

    #---=-rows:使用64位編碼機制去解碼并按行讀取

    #-v:顯示詳細內容

    2.1.5 MySQL 增量恢復

    1.一般恢復

    (1)模擬丟失更改的數據的恢復步驟

    use ;

    from where id=6;

    from where id=7;

    --no- /opt/mysql-bin. | mysql -u root -p

    具體操作:

    1)刪除表中的末2行數據

    2)通過二進制日志進行恢復

    (2)模擬丟失所有數據的恢復步驟

    use ;

    備份數據庫有哪些方法_mysql 整庫備份_oracle全庫備份

    drop table ;

    mysql -u root -p < /opt//.sql

    --no- /opt/mysql-bin. | mysql -u root -p

    具體操作:

    1)刪除庫中的表

    2)先回復整表,然后在恢復二進制日志文件

    2.斷點恢復

    實驗:表和數據如下

    -u root -p flush-logs # 刷新生成新的二進制日志文件

    cd /usr/local/mysql/data# 進入到data目錄

    --no- ---=-rows -v mysql-bin.#查看二進制日志文件

    例:

    # at 304								#斷點
    #210628 15:04:44							#時間
    insert into football value(1,'梅西',34,80000000)			#插入的數據
    

    # at 2179									#斷點
    #210628 15:05:30								#時間
    insert into football value(7,'阿亮',26,100)					#插入的數據

    (1)基于位置恢復

    #僅恢復到操作 ID 為“2179”之前的數據,即不恢復“后面一條”的數據

    --no- --stop-='2179' mysql-bin. | mysql -uroot -p

    1)刪除表中所有數據

    2)對數據進行恢復

    #僅恢復“最后一條”的數據,跳過“前面多條”的數據恢復
    mysqlbinlog --no-defaults --start-position='2179' mysql-bin.000006 | mysql -uroot -p

    1)重新刪除數據

    2)對數據進行恢復

    (2)基于時間點恢復

網站首頁   |    關于我們   |    公司新聞   |    產品方案   |    用戶案例   |    售后服務   |    合作伙伴   |    人才招聘   |   

友情鏈接: 餐飲加盟

地址:北京市海淀區    電話:010-     郵箱:@126.com

備案號:冀ICP備2024067069號-3 北京科技有限公司版權所有