1. 程式人生 > 資料庫 >shell study-16day--mysql資料庫備份

shell study-16day--mysql資料庫備份

1、MariaDB資料庫備份指令碼

(1)MariaDB資料庫簡介

從 centos7.0 開始,系統中自帶的 mysql 資料庫,改為 mariadb 資料庫。

MariaDB 資料庫概述:MariaDB 資料庫管理系統是 MySQL 的一個分支,主要由開源社群在維護,採用 GPL授權許可 MariaDB 的目的是完全相容 MySQL,包括 API 和命令列,使之能輕鬆成為 MySQL 的代替品。

甲骨文公司收購了 MySQL 後,有將 MySQL 閉源的潛在風險,因此社群採用分支的方式來避開這個風險。目前很多大型網際網路使用者以及 Linux發行商紛紛拋棄 MySQL,轉投 MariaDB 陣營。MariaDB 是目前最受關注的 MySQL 資料庫衍生版,也被視為開源資料庫 MySQL 的替代品

(2)centos7.3安裝mariadb

#安裝

[root@test ~]# yum -y install mariadb mariadb-server

 #檢視安裝版本資訊

[root@test ~]# rpm -qa |grep mariadb 
mariadb-libs-5.5.68-1.el7.x86_64
mariadb-server-5.5.68-1.el7.x86_64
mariadb-5.5.68-1.el7.x86_64

#啟動mariadb

[root@test ~]# systemctl start mariadb

#設定mysql資料庫root密碼

[root@test ~]# mysqladmin  -u root password "123456"

 #登入mysql並建立book庫,book庫中建立user表,插入一條記錄,欄位id欄位值為1.

[root@test ~]# mysql -u root -p 
MariaDB [(none)]> show databases;
MariaDB [(none)]> create database book;
MariaDB [(none)]> use book;
MariaDB [book]> create table user(id int); 
MariaDB [book]> insert into user values(1);
MariaDB [book]> select  * from user;    
+------+
| id   |
+------+
|    1 |
+------+
1 row in set (0.00 sec)
 
MariaDB [book]> commit;
MariaDB [book]>quit

(3)定時備份指令碼

[root@test home]# cat mysql-back.sh 
#/bin/bash
# msyql back 
# YX 
# 2020.11.21
backdir=/home/mysql/back/`date +"%Y-%m-%d"`
mysqldb=book
mysqluser=root
mysqlpassword=123456
#必須使用root使用者,使用$UID進行判斷,root使用者uid為0.
if [ $UID -ne 0 ];then
    echo "YOU need root user"
    exit
fi
 
#判斷備份檔案目錄是否存在,不存在則建立
if [ ! -d $backdir ];then 
   mkdir -p $backdir
else
   echo "this dir is exit"
   exit
fi
 
#mysql備份
/usr/bin/mysqldump -u$mysqluser -p$mysqlpassword $mysqldb >$backdir/${mysqldb}_`date +%Y-%m-%d-%H-%S`.sql;
cd $backdir;
tar -zcvf ${mysqldb}_tar.gz *.sql;
find $backdir -type f -name *.sql -exec rm -rf {} \;
echo "mysql backup successfully"
[root@test home]# sh mysql-back.sh 
book_2020-11-21-23-43.sql
mysql backup successfully
[root@test home]# ls /home/mysql/back/2020-11-21/
book_tar.gz
[root@test home]#

個人公眾號:

image.png