案例1:受權數據庫用戶 案例2:查看及撤銷受權 案例3:重置數據庫管理密碼 案例4:遠程維護數據庫 案例5:企業OA系統部署 案例6:企業OA系統遷移
1 案例1:受權數據庫用戶
1.1 問題php
本例要求掌握MariaDB數據庫中用戶帳號的受權操做,完成下列任務:mysql
1)爲OA系統創建專庫 oadb,並受權用戶web
容許用戶 runoa 從本機訪問,對庫 oadb 有所有權限 訪問密碼爲 pwd@123 測試用戶runoa的數據庫訪問權限
2)新建名爲tarzan的管理員sql
容許從任何客戶機('%')訪問,對全部庫有所有權限 訪問密碼爲 tedu.cn1234 測試用戶tarzan的數據庫訪問權限
1.2 步驟數據庫
實現此案例須要按照以下步驟進行。apache
步驟一:爲OA系統創建專庫 oadb,並受權用戶vim
1)建立數據庫oadb瀏覽器
MariaDB [(none)]> CREATE DATABASE oadb; Query OK, 1 row affected (0.00 sec) MariaDB [(none)]>
2)受權用戶 runoa 從本機訪問,對庫 oadb 有所有權限,訪問密碼爲 pwd@123安全
MariaDB [(none)]> GRANT all ON oadb.* TO runoa@localhost IDENTIFIED BY 'pwd@123'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]>
3)測試runoa的數據庫訪問權限服務器
另開一個命令行終端,以runoa用戶鏈接本機數據庫,測試刪除及重建oadb庫。
[root@zbx ~]# mysql -urunoa -ppwd@123 .. .. MariaDB [(none)]> DROP DATABASE oadb; Query OK, 0 rows affected (0.01 sec) MariaDB [(none)]> CREATE DATABASE oadb; Query OK, 1 row affected (0.00 sec) MariaDB [(none)]> QUIT; Bye [root@zbx ~]#
步驟二:新建名爲tarzan的管理員
1)增長管理員用戶
容許從其餘任何客戶機('%')訪問,對全部庫有所有權限,訪問密碼爲 tedu.cn1234。
管理員用戶有權限經過GRANT受權用戶。
MariaDB [(none)]> GRANT all ON *.* to tarzan@'%' IDENTIFIED BY 'tedu.cn1234' WITH GRANT OPTION; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]>
2)以新管理員用戶鏈接,測試數據庫訪問權限
使用mysql命令鏈接其餘主機的數據庫時,須要添加 –h主機地址 選項,好比從客戶機svr8上訪問位於192.168.10.7的MariaDB數據庫。
[root@svr8 ~]# mysql -utarzan -ptedu.cn1234 -h192.168.10.7 Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 2797 Server version: 5.5.56-MariaDB MariaDB Server Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]>
測試新建數據庫zhdb:
MariaDB [(none)]> CREATE DATABASE zhdb; Query OK, 1 row affected (0.00 sec) MariaDB [(none)]>
測試受權數據庫用戶zhwuji:
MariaDB [(none)]> GRANT all ON zhdb.* TO zhwuji@localhost IDENTIFIED BY 'pwd@123'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]>
退出:
MariaDB [(none)]> QUIT; Bye [root@zbx ~]#
2 案例2:查看及撤銷受權
2.1 問題
本例要求學會在MariaDB數據庫中查看及撤銷指定用戶的受權,完成下列任務:
1)查看用戶tarzan訪問本機數據庫的權限
2)撤銷用戶tarzan從任何客戶機來訪對全部庫的全部權限
3)再次查看用戶tarzan訪問本機數據庫的權限
2.2 步驟
實現此案例須要按照以下步驟進行。
步驟一:查看用戶tarzan訪問本機數據庫的權限
MariaDB [(none)]> SHOW GRANTS FOR tarzan@'%'; +----------------------------------------------------------------------------------------------------------------------------------+ | Grants for tarzan@% | +----------------------------------------------------------------------------------------------------------------------------------+ | GRANT ALL PRIVILEGES ON *.* TO 'tarzan'@'%' IDENTIFIED BY PASSWORD '*8AB2CB3B8352A05A9C4AB822AAF421001382BD5E' WITH GRANT OPTION | +----------------------------------------------------------------------------------------------------------------------------------+ 1 row in set (0.00 sec) MariaDB [(none)]>
步驟二:撤銷用戶tarzan從任何客戶機來訪對全部庫的全部權限
MariaDB [(none)]> REVOKE all ON *.* FROM tarzan@'%'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]>
步驟三:再次查看用戶tarzan訪問本機數據庫的權限
MariaDB [(none)]> SHOW GRANTS FOR tarzan@'%'; +-------------------------------------------------------------------------------------------------------------------------+ | Grants for tarzan@% | +-------------------------------------------------------------------------------------------------------------------------+ | GRANT USAGE ON *.* TO 'tarzan'@'%' IDENTIFIED BY PASSWORD '*8AB2CB3B8352A05A9C4AB822AAF421001382BD5E' WITH GRANT OPTION | +-------------------------------------------------------------------------------------------------------------------------+ 1 row in set (0.00 sec) MariaDB [(none)]>
3 案例3:重置數據庫管理密碼
3.1 問題
本例要求學會重置數據庫管理密碼的基本方法,以便在忘記或沒法獲知MariaDB數據庫管理密碼的狀況下取得管理權限,完成下列任務:
1)中止mariadb服務
2)跳過受權啓動數據庫進程mysqld_safe
3)重設管理密碼
4)關閉mysqld_safe進程,正常啓動mariadb服務
5)驗證新密碼
3.2 步驟
實現此案例須要按照以下步驟進行。
步驟一:中止mariadb服務
[root@svr7 ~]# systemctl stop mariadb //停服務
步驟二:跳過受權啓動數據庫進程mysqld_safe
[root@svr7 ~]# mysqld_safe --skip-grant-tables & //直起進程 [1] 105799 [root@svr7 ~]#
步驟三:重設管理密碼
1)免密碼登入數據庫
[root@svr7 ~]# mysql -uroot //免密碼登入 .. .. MariaDB [(none)]>
2)設置新密碼
MariaDB [(none)]> UPDATE mysql.user SET Password=password('pwd@123') WHERE User='root' AND Host='localhost'; //設置新密碼 Query OK, 0 rows affected (0.00 sec) Rows matched: 1 Changed: 0 Warnings: 0 MariaDB [(none)]> FLUSH PRIVILEGES; //刷新受權 Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]>
3)退出鏈接
MariaDB [(none)]> QUIT //退出 Bye
步驟四:關閉mysqld_safe進程,正常啓動mariadb服務
1)關閉mysqld_safe進程
[root@svr7 ~]# pkill -9 mysqld_safe //強關mysqld_safe [1]+ 已殺死 mysqld_safe --skip-grant-tables
2)正常啓動mariadb服務
[root@svr7 ~]# systemctl restart mariadb //起正常服務
步驟五:驗證新密碼
[root@svr7 ~]# mysql -uroot -ppwd@123 //驗證新密碼登入 .. .. MariaDB [(none)]> QUIT Bye [root@svr7 ~]#
4 案例4:遠程維護數據庫
4.1 問題
本例要求學會經過MySQL-Front圖形軟件遠程維護MariaDB數據庫服務器系統,完成下列任務:
1)在MariaDB服務端受權管理用戶
容許root從任何IP地址訪問本機,密碼爲 pwd@123
2)從Win客戶機遠程管理MariaDB服務器
安裝MySQL-Front管理軟件 運行MySQL-Front程序,遠程鏈接MariaDB服務器 查看studb庫stuinfo表的數據內容 備份studb庫
4.2 步驟
實現此案例須要按照以下步驟進行。
步驟一:在MariaDB服務端受權管理用戶
容許root從任何IP地址訪問本機,密碼爲 pwd@123
[root@svr7 ~]# mysql -uroot -ppwd@123 .. .. MariaDB [(none)]> GRANT all ON *.* to root@'%' IDENTIFIED BY 'pwd@123' WITH GRANT OPTION; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> QUIT Bye [root@zbx ~]#
步驟二:從Win客戶機遠程管理MariaDB服務器
1)安裝MySQL-Front管理軟件
雙擊安裝程序MySQL-Front_Setup.exe,如圖-1所示,而後根據界面提示完成安裝
2)運行MySQL-Front程序,遠程鏈接MariaDB服務器
雙擊桌面的MySQL-Front快捷圖標,能夠打開此軟件程序。在初次啓動界面中,能夠根據提示正確填寫數據庫服務器信息,如圖-2所示,肯定後能夠添加數據庫鏈接。
而後選中剛創建的鏈接,如圖-3所示,單擊「打開」。
接下來會成功鏈接至目標數據庫服務器,如圖-4所示,默認會列出此用戶有權限看到的全部庫。
3)查看studb庫stuinfo表的數據內容
在MySQL-Front連入數據庫服務器的管理界面中,能夠對指定的庫、表進行操做。
好比,展開studb庫、選中stuinfo表,能夠經過右側的「對象瀏覽器」來查看或修改表的結構,如圖-5所示。
單擊右側的「數據瀏覽器」能夠查看或修改表格的數據內容,如圖-6所示。
4)備份studb庫
在MySQL-Front界面中,右擊左側的某個庫,選擇「導出」-->「SQL文件」,能夠選擇存放位置、備份方式,如圖-7所示,單擊「運行」便可執行備份。
5 案例5:企業OA系統部署
5.1 問題
本例要求在虛擬機192.168.10.7上快速部署「信呼協同辦公」系統,爲下一個遷移案例作好環境準備,完成下列任務:
1)準備LAMP環境,註冊本地域名 oa.tedu.cn
2)配置虛擬主機 oa.tedu.cn ,使用「信呼協同辦公」代碼
3)準備專用數據庫 oadb,受權用戶 runoa 全權訪問
4)調整 /var/www/oa 目錄的歸屬,使Web服務有寫入權限
5)訪問 http://oa.tedu.cn/ ,按提示安裝OA系統
5.2 步驟
實現此案例須要按照以下步驟進行。
步驟一:準備LAMP環境,註冊本地域名 oa.tedu.cn
1)確保啓動LAMP網站平臺
[root@svr7 ~]# yum -y install httpd mariadb-server maria php php-mysql [root@svr7 ~]# systemctl restart httpd mariadb [root@svr7 ~]# systemctl enable httpd mariadb
2)註冊本地域名 oa.tedu.cn
[root@svr7 ~]# vim /etc/hosts //註冊本地域名 .. .. 192.168.10.7 svr7.tedu.cn oa.tedu.cn
步驟二:配置虛擬主機 oa.tedu.cn ,使用「信呼協同辦公」代碼
1)解包及部署
[root@svr7 ~]# unzip /root/信呼協同辦公_v1.8.1.zip -d /var/www/ .. .. //解包並部署到位
2)爲oa.tedu.cn添加虛擬主機
[root@svr7 ~]# vim /etc/httpd/conf.d/vhosts.conf //配置虛擬主機 <VirtualHost *:80> ServerName oa.tedu.cn DocumentRoot /var/www/oa </VirtualHost> [root@svr7 ~]# systemctl restart httpd //重啓Web服務
步驟三:準備專用數據庫oadb,受權用戶runoa全權訪問
若是以前已經執行過此操做,則此處可跳過。
[root@svr7 ~]# mysql -uroot -ppwd@123 //鏈接 MariaDB [(none)]> CREATE DATABASE oadb; //建庫 MariaDB [(none)]> GRANT all ON oadb.* to runoa@localhost IDENTIFIED BY 'pwd@123'; //受權用戶 MariaDB [(none)]> QUIT; //退出 [root@svr7 ~]#
步驟五:調整/var/www/oa目錄的歸屬,使Web服務有寫入權限
[root@svr7 ~]# chown -R apache /var/www/oa/ [root@svr7 ~]# ls -ld /var/www/oa/ drwxr-xr-x. 10 apache root 231 9月 24 22:27 /var/www/oa/
步驟五:訪問http://oa.tedu.cn/,按提示安裝OA系統
在svr7主機上啓動Firefox火狐瀏覽器,訪問http://oa.tedu.cn/,能夠看到信呼協同系統的安裝頁面,如圖-8所示。
單擊「知道了」,在下一個頁面中正確填寫數據庫鏈接信息,如圖-9所示,肯定無誤後單擊「提交安裝」便可。
注意:若提示「沒法寫入文件夾Webmain」,請檢查SELinux安全機制是否關閉。
完成安裝後,請根據頁面提示刪除安裝目錄、記錄默認管理用戶(admin)及密碼(123456),如圖-10所示,而後單擊「前去登陸頁面」。
成功登陸便可看到信息系統的管理界面,如圖-11所示。
6 案例6:企業OA系統遷移
6.1 問題
本例要求經過LAMP網站平臺的離線遷移過程,進一步熟悉網站和數據庫的備份、恢復相關操做,完成下列任務:
1)備份 svr7.tedu.cn 上的OA系統網站和數據庫資料
2)準備一臺新虛擬機(svr8.tedu.cn-->192.168.10.8)
安裝並啓動LAMP網站平臺 註冊本地域名 oa.tedu.cn-->192.168.10.8
3)經過備份將OA系統遷移到 svr8.tedu.cn 上
4)在svr8上訪問http://oa.tedu.cn/,驗證結果
6.2 步驟
實現此案例須要按照以下步驟進行。
步驟一:備份 svr7.tedu.cn 上的OA系統網站和數據庫資料
1)備份網站
停Web服務:
[root@svr7 ~]# systemctl stop httpd
執行備份:
[root@svr7 ~]# tar -zcPf /root/oa_web.tgz /etc/httpd/conf.d/vhosts.conf /var/www/oa/ //注意選項P是大寫的
2)備份數據庫
執行備份:
[root@svr7 ~]# mysqldump -uroot -ppwd@123 --databases oadb > /root/oa_database.sql //按多庫方式備份
確認備份文件:
[root@svr7 ~]# ls -lh /root/oa_* -rw-r--r--. 1 root root 1021K 9月 25 02:12 /root/oa_database.sql -rw-r--r--. 1 root root 2.0M 9月 25 02:06 /root/oa_web.tgz
步驟二:準備一臺新虛擬機(svr8.tedu.cn 192.168.10.8)
1)安裝並啓動LAMP網站平臺
[root@svr8 ~]# yum -y install httpd mariadb-server maria php php-mysql [root@svr8 ~]# systemctl restart httpd mariadb //開啓網站和數據庫服務 [root@svr8 ~]# systemctl enable httpd mariadb
2)註冊本地域名 oa.tedu.cn,對應IP地址192.168.10.8
[root@svr8 ~]# vim /etc/hosts 192.168.10.8 oa.tedu.cn
步驟三:經過備份將OA系統遷移到 svr8.tedu.cn 上
1)上傳備份資料
注意提早將svr7上的網站、數據庫資料備份文件上傳到svr8上。好比,在svr7上能夠使用scp直接上傳備份文件。
[root@svr7 ~]# scp /root/oa_* root@192.168.10.8:/root root@192.168.10.8's password: oa_database.sql 100% 518KB 51.1MB/s 00:00 oa_web.tgz 100% 1947KB 65.4MB/s 00:00 [root@svr7 ~]#
2)在svr8上確認備份資料
[root@svr8 ~]# ls -lh /root/oa_* -rw-r--r--. 1 root root 518K 1月 15 18:11 /root/oa_database.sql -rw-r--r--. 1 root root 2.0M 1月 15 18:11 /root/oa_web.tgz
3)恢復網站、數據庫
[root@svr8 ~]# tar -xPf /root/oa_web.tgz //導入網站文檔 [root@svr8 ~]# mysql -uroot < /root/oa_database.sql //導入數據庫
4)準備數據庫用戶
[root@svr8 ~]# mysql -uroot //新數據庫服務器無密碼 MariaDB [(none)]> GRANT all ON oadb.* to runoa@localhost IDENTIFIED BY 'pwd@123'; //受權用戶 MariaDB [(none)]> QUIT; //退出 [root@svr8 ~]#
步驟四:在svr8上訪問http://oa.tedu.cn/ ,驗證結果
遷移完畢後,能夠在svr8上訪問http://oa.tedu.cn/ ,直接得到原來運行在svr7上的OA平臺。經過管理員admin能夠直接登陸,數據資料都完整無缺,如圖-12所示。