溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

MySQL數(shù)據(jù)庫密碼、授權(quán)、備份與恢復(fù)

發(fā)布時間:2020-04-25 11:23:40 來源:億速云 閱讀:250 作者:三月 欄目:MySQL數(shù)據(jù)庫

下文內(nèi)容主要給大家?guī)?a title="MySQL" target="_blank" href="http://www.kemok4.com/mysql/">MySQL數(shù)據(jù)庫密碼、授權(quán)、備份與恢復(fù),這里所講到的知識,與書籍略有不同,都是億速云專業(yè)技術(shù)人員在與用戶接觸過程中,總結(jié)出來的,具有一定的經(jīng)驗分享價值,希望給廣大讀者帶來幫助。

數(shù)據(jù)庫管理員root用戶 密碼的設(shè)置

(a)知道舊密碼修改mysqladmin -hlocalhost -uroot -p password "abc123"
enter oldpasswd 123456
ok
mysql -uroot -pabc123456
(b)不知道舊密碼
/etc/my.cnf
[mysqld]
skip-grant-tables  /不驗證密碼登錄
systemctl restart mysqld

mysql
>update mysql.user set authentication_string=password("新密碼") where user="root" and host="localhost";
>flush privaileges   /不重啟MySQL服務(wù) 使設(shè)置生效
>quit

/etc/my.cnf
[mysqld]
#skip-grant-tables  /不驗證密碼登錄
systemctl restart mysqld
mysql -hlocalhost -uroot -pabc123
>
#####################################

MySQL用戶授權(quán)及撤銷

MySQL數(shù)據(jù)庫密碼、授權(quán)、備份與恢復(fù)

(a)用戶授權(quán)
grant 權(quán)限列表 on 庫.表 to 用戶名@"客戶端地址" identified by "密碼" [with grant option]

權(quán)限表示: all(所有權(quán)限) usage(無權(quán)限,只允許登錄) select(查詢) delete(刪除) insert(增加) update(修改)...
庫名:  庫名.表名 *.*(所有庫.所有表) 庫名.*(庫下的所有表)
用戶名:自定義
客戶端地址: % 所有地址 192.168.4.12(只允許這個地址) 192.168.4.%(允許4.0這個網(wǎng)段)... 
密碼: 授權(quán)用戶的登錄密碼
with grant option /可以有授權(quán)權(quán)限

[云服務(wù)器 192.168.4.11]
#grant all on *.* to user@"192.168.4.12" identified by "123456" with grant option;
/用戶user在192.168.4.12主機上登錄數(shù)據(jù)庫,具有對所有庫,所有表 所有的權(quán)限 還有可以授權(quán)權(quán)限
>show grants for user@"192.168.4.12"  /在服務(wù)器上查看授權(quán)的用戶的權(quán)限
>set password for user@192.168.4.12=password("新密碼"); /在服務(wù)器上為授權(quán)用戶修改密碼

[客戶端 192.168.4.254]
#mysql -h292.168.4.11 -uuser -p123456
mysql>
>show grants;  /客戶端查看權(quán)限
>set password=password("新密碼"); /授權(quán)用戶自己修改密碼
(b)撤銷權(quán)限
(1) 通過命令撤銷
revoke 權(quán)限列表 on 庫名.表名 from 用戶名@"客戶端地址"
#revoke all on *.* from user@192.168.4.12;

(2)通過修改數(shù)據(jù)庫表記錄撤銷
use mysql
>show tables;
use  已有授權(quán)用戶信息
db   授權(quán)用戶對庫的訪問權(quán)限
tables_priv   授權(quán)用戶對表的訪問權(quán)限
columns_priv  授權(quán)用戶對表中字段的訪問權(quán)限

#update user set delete_priv="N",drop_priv="N" where user="user"and host="192.168.4.254"; /撤銷刪除,改動權(quán)限
flush privileges;
show grants for user@192.168.4.254;

########################################

數(shù)據(jù)備份與恢復(fù)(完全備份與完全恢復(fù))

備份方式
(a)物理備份: 直接copy庫或表對應(yīng)的文件
備份
#cp -rp /var/lib/mysql/gamedb /allbak
恢復(fù)
#cp -rp /allbak /var/lib/mysql/gamedb
使用物理備份需要注意庫的權(quán)限,屬主,屬組都要是mysql

(b)邏輯備份: 執(zhí)行備份時,根據(jù)已有的庫和表生成對應(yīng)sql命令,把生成的sql命令存儲到指定的備份文件里。
#mysqldump -u用戶名 -p密碼 庫名 > /目錄/名.sql
庫名表示方式:
--all-databases     /備份數(shù)據(jù)庫服務(wù)器的所有數(shù)據(jù)  
庫名           /備份一個庫的所有數(shù)據(jù)
庫 表              /備份一個表的所有數(shù)據(jù)
-B 庫名1 庫名2 ..    /一起備份多個庫的所有數(shù)據(jù)
備份
#mysqldump -uroot -p"abc123" gamedb > /allbak/mysql.sql
恢復(fù)
#mysql>create database gamedb    /恢復(fù)時需要先創(chuàng)建好庫
#mysql -uroot -pabc123 gamedb < /allbak/mysql.sql

(c)完全備份: 備份所有數(shù)據(jù)
(d)差異備份: 備份自完全備份后的收有數(shù)據(jù)
(e)增量備份: 備份自上一次備份后,產(chǎn)生的新數(shù)據(jù)

 備份策略使用方式
 完全+差異
 完全+增量(使用較多)

 執(zhí)行完全備份的周期化任務(wù)
 /root/beifen.sh
 #! /bin/bash
 if [ ! -e /allbak ]
 mkdir /allbak 
 mysqldump -uroot -p"abc123" gamedb > /allbak/mysql-`date +%F`.sql

 systemctl start crond
 crontab -e

對于以上關(guān)于MySQL數(shù)據(jù)庫密碼、授權(quán)、備份與恢復(fù),如果大家還有更多需要了解的可以持續(xù)關(guān)注我們億速云的行業(yè)推新,如需獲取專業(yè)解答,可在官網(wǎng)聯(lián)系售前售后的,希望該文章可給大家?guī)硪欢ǖ闹R更新。

 

 

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI