mysql 開發進階篇系列 45 xtrabackup 安裝,用戶許可權,配置

来源:https://www.cnblogs.com/MrHSR/archive/2018/09/30/9727916.html
-Advertisement-
Play Games

一. 安裝說明 安裝XtraBackup 2.4 版本有三種方式: (1) 存儲庫安裝Percona XtraBackup(推薦) (2 )下載的rpm或apt包安裝Percona XtraBackup。 (3) 源代碼編譯和安裝。 Percona為yum (Red Hat、CentOS和Amazo ...


一. 安裝說明

  安裝XtraBackup 2.4 版本有三種方式:

           (1) 存儲庫安裝Percona XtraBackup(推薦)

           (2 )下載的rpm或apt包安裝Percona XtraBackup。

           (3) 源代碼編譯和安裝。
  Percona為yum (Red Hat、CentOS和Amazon Linux AMI的RPM包)和apt (Ubuntu和Debian的.deb包)提供存儲庫,用於Percona Server、Percona XtraBackup和Percona Toolkit等軟體。存儲庫安裝將得通過操作系統的包管理器,輕鬆地安裝和更新軟體及其依賴項。這是推薦的安裝方法。

二. 安裝演示(centos 7)

  使用 yum安裝工具。 yum下載的預設文件包路徑存放在/var/cache/yum目錄下。

  步驟1:切換到root用戶下,使用yum下載安裝Percona 存儲庫,代碼如下:

    [root@hsr /]# yum install http://www.percona.com/downloads/percona-release/redhat/0.1-6/percona-release-0.1-6.noarch.rpm

  完裝完成後,如下圖所示:
    
  步驟2: 驗證yum是否安裝成功。下麵使用yum list輸出所有yum安裝的工具,並用grep來過濾,註意grep後面不要寫錯過濾條件。查詢命令如下:

    [root@hsr /]# yum list | grep percona-xtrabackup

    
  步驟3:安裝 percona-xtrabackup-24

   [root@hsr /]# yum install percona-xtrabackup-24

    

  最後簡單查看xtrabackup安裝路徑和文檔

-- 安裝路徑
[root@hsr /]# type xtrabackup
xtrabackup 已被哈希 (/usr/bin/xtrabackup)
-- 文檔
[root@hsr /]#  xtrabackup --help
xtrabackup: recognized server arguments: --server-id=1 --log_bin=/var/lib/mysql/mysql-bin --datadir=/usr/local/mysql/data 
xtrabackup: recognized client arguments: --server-id=1 --log_bin=/var/lib/mysql/mysql-bin --datadir=/usr/local/mysql/data 
xtrabackup version 2.4.12 based on MySQL server 5.7.19 Linux (x86_64) (revision id: 170eb8c)
Open source backup tool for InnoDB and XtraDB
-- 使用方法如下:
Usage: [xtrabackup [--defaults-file=#] --backup | xtrabackup [--defaults-file=#] --prepare] [OPTIONS]
-- 預設按照以下路徑讀取mysql的my.cnf文件
Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/etc/my.cnf ~/.my.cnf
最後[OPTIONS]參數太多,這篇就不在列出。

 

三 . 用戶許可權

  3.1 連接服務和許可權概述
    Percona XtraBackup需要能夠連接到資料庫伺服器,並創建備份、在某些場景中進行準備和恢復備份時,在伺服器的datadir上執行操作。為了做到這一點,必須滿足其執行的特權和許可權要求。

    無論使用xtrabackup還是innobackupex,都會涉及兩個角色。調用程式的用戶(系統用戶)和在資料庫伺服器中執行操作的用戶(資料庫用戶)。請註意,這些用戶位於不同的位置,儘管他們的用戶名可能相同。

  3.2 系統用戶許可權

    執行 innobackupex/xtrabackup 命令的Linux用戶需要對mysql的datadir和保存備份的目錄(mysql的環境變數tmpdir)有讀寫執行許可權。查看datadir目錄許可權,使用mysql,root系統用戶,查看datadir目錄/usr/local/mysql/data。下圖顯示有讀寫執行許可權,如果沒有就需要設置。
    
    備份目錄許可權xtrabackup 備份選項target_dir,可以在備份時使用命令行指定選項,也可以在my.cnf中配置好target_dir,後面備份操作時再配置。

 3.3  資料庫用戶許可權
    連接工具可以是用innobackupex或xtrabackup。innobackupex只是一個軟鏈接指向了xtrabackup。用法一樣,後面就只講xtrabackup。innobackupex的軟連接如下圖所示:
    
    用於連接到伺服器的資料庫用戶及其密碼由xtrabackup—user和xtrabackup—password選項指定。這裡user用戶是指mysql.user表中的用戶,需要一些基本的許可權來執行備份過程。資料庫用戶需要備份表或資料庫需要以下許可權:

(1) RELOAD重新載入和LOCK TABLES鎖定表(除非指定了-no-lock選項)二個許可權,LOCK TABLES是為了在開始複製文件之前使用READ LOCK讀鎖, 在使用備份鎖時,用於備份的鎖表和用於備份的鎖BINLOG需要此特權。RELOAD是為了刷新引擎日誌來FLUSH TALBES刷新表。

(2) REPLICATION CLIENT複製許可權,是客戶端為了獲得二進位日誌位置。

(3) TABLESPACE表空間許可權,創建表空間以導入表(參見恢復各個表)。

(4) PROCESS進程許可權,是為了運行SHOW ENGINE INNODB STATUS(這是強制性的),並可選地看到所有線程運行在伺服器上(見改進的嵌入式表與讀鎖處理)。

(5) SUPER許可權,為了在複製環境中啟動/停止從線程,使用XtraDB更改後的頁面跟蹤來進行增量備份和改進的具有讀鎖處理的刷新表。

(6) CREATE privilege特權 是為了創建PERCONA_SCHEMA.xtrabackup_history庫和表。

(7 )INSERT privilege特權,是為了添加歷史記錄PERCONA_SCHEMA.xtrabackup_history 表。

(8) select privilege特權,是為了使用innobackupex—incremental-history-name或innobackupex—incremental-history-uuid,以便特性在PERCONA_SCHEMA.xtrabackup_history 表中查找innodb_to_lsn值。

 

-- 下麵一個案例是:創建一個資料庫用戶,對於完全備份使用必需的最小特權。
mysql> CREATE USER 'bkpuser'@'localhost' IDENTIFIED BY 's3cret';
mysql> GRANT RELOAD, LOCK TABLES, PROCESS, REPLICATION CLIENT ON *.* TO
       'bkpuser'@'localhost';
mysql> FLUSH PRIVILEGES;

 

四.配置 xtrabackup
  所有的xtrabackup配置都是通過選項完成的,其行為與標準的MySQL程式選項完全相同:它們可以通過命令行指定,也可以通過/etc/my.cnf這樣的文件指定。
  xtrabackup二進位文件按照順序從任何配置文件中讀取[mysqld]和[xtrabackup]部分。這樣它就可以從您現有的MySQL安裝中讀取它的選項,例如datadir或一些InnoDB選項。如果您想要重寫這些內容,只需在[xtrabackup]部分中指定它們,因為它稍後會被讀取,所以它會優先。
  如果不需要,您不需要在my.cnf中添加任何配置。您可以簡單地在命令行上指定選項。通常,在my.cnf文件的[xtrabackup]部分,您可能會發現唯一方便的地方是target_dir選項,它可以預設放置備份的目錄。例如:

[xtrabackup]
target_dir = /data/backups/mysql/

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • CENTOS7錯誤:Cannot find a valid baseurl for repo: base/7/x86_6 解決辦法: 1、進入/etc/sysconfig/network-scripts目錄,查找ifcfg開頭的文件,將配置ONBOOT=no,改為ONBOOT=yes 具體命令如下: ...
  • 新建 docker-startup.bat 因為我使用Docker Compose管理多個容器,你也可以直接docker run 運行鏡像 創建並設置任務計劃 設置為系統啟動時執行計劃 指定要執行的腳本 “程式或腳本” 選擇剛創建的docker-startup.bat “起始於” D:\Progra ...
  • 系統匯流排 電腦組成原理 版權聲明:本文章參考了唐朔飛的《 電腦組成原理》。未經作者允許,嚴禁用於商業出版,否則追究法律責任。網路轉載請註明出處,這是對原創者的起碼的尊重!!! 1 匯流排的基本概念 匯流排:連接多個部件的信息傳輸線,是各部件共用的傳輸介質。同一時刻只能有一個部件向匯流排發送信息,但可以 ...
  • (一)深入淺出理解索引結構 實際上,您可以把索引理解為一種特殊的目錄。微軟的SQL SERVER提供了兩種索引:聚集索引(clustered index,也稱聚類索引、簇集索引)和非聚集索引(nonclustered index,也稱非聚類索引、非簇集索引)。下麵,我們舉例來說明一下聚集索引和非聚集 ...
  • 應用程式從AWS S3或者阿裡雲OSS讀取數據時,通常都會有嚴重的性能問題,畢竟是要通過遠程網路。 Alluxio可以提供一個透明的數據緩存層,自動緩存需要讀取遠端OSS/S3數據,但是Alluxio本身什麼時候拉取遠端數據呢?預設全部緩存?還是按需緩存?這個PPT里將會介紹Alluxio的層次化存 ...
  • SQL活動和監視器是SQL Server自帶的一個功能,在不斷的升級優化中功能也越來越強大。 運行方式:伺服器-->右鍵-->活動和監視器 可以看到很多資料庫重要的運行狀態。 1.等待任務較多時需要註意是否有鎖表和有大量耗時SQL執行。 2.最近耗費大量資源的查詢展示了耗時耗資源的SQL信息,可根據 ...
  • 正常的設置賬號遠程訪問依然訪問不了的情況,可以看一下伺服器 my.cnf配置文件下 [client] #password = your_password 把上面的#去掉就行了。 ...
  • NOT IN查詢示例(示例背景描述:根據條件查詢Questions表得到的數據基本在PostedData表中不存在,為完全保證查詢結果在PostedData表中不存在,使用NOT IN): 查詢耗時如圖: 換用NOT EXISTS 查詢示例: 查詢耗時如圖: 根據查詢耗時明顯可以看出,使用 NOT ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...