本文主要給大家介紹MySQL數(shù)據(jù)庫管理員密碼如何設(shè)置問題解析,希望可以給大家補(bǔ)充和更新些知識(shí),如有其它問題需要了解的可以持續(xù)在創(chuàng)新互聯(lián)行業(yè)資訊里面關(guān)注我的更新文章的。
創(chuàng)新互聯(lián)建站10多年成都企業(yè)網(wǎng)站定制服務(wù);為您提供網(wǎng)站建設(shè),網(wǎng)站制作,網(wǎng)頁設(shè)計(jì)及高端網(wǎng)站定制服務(wù),成都企業(yè)網(wǎng)站定制及推廣,對(duì)成都主動(dòng)防護(hù)網(wǎng)等多個(gè)行業(yè)擁有多年的網(wǎng)站營(yíng)銷經(jīng)驗(yàn)的網(wǎng)站建設(shè)公司。
一、數(shù)據(jù)庫管理員密碼的設(shè)置:
1、修改數(shù)據(jù)庫管理員本機(jī)登錄密碼(操作系統(tǒng)管理員有權(quán)限修改)
mysqladmin -hlocalhost -uroot -p password "新密碼"
2、恢復(fù)數(shù)據(jù)庫管理員密碼(操作系統(tǒng)管理員有權(quán)限修改)
#systemctl stop mysqld
#vim /etc/my.cnf
[mysqld]
skip-grant-tables //跳過密碼驗(yàn)證
#systemctl start mysqld
#mysql
mysql> update mysql.user set authentication_string=password("新密碼") where user="root" and host="localhost";
mysql> flush privileges;
mysql> quit;
#vim /etc/my.cnf
[mysqld]
#skip-grant-tables //將跳過驗(yàn)證注釋
#systemctl stop mysqld
#systemctl start mysqld
#mysql -uroot -p新密碼 //登陸驗(yàn)證密碼是否設(shè)置成功
mysql>
+++++++++++++++++++++++++++++++++++++++
二 、用戶授權(quán):就在數(shù)據(jù)庫云服務(wù)器添加新的連接用戶。
用戶授權(quán):
命令:
mysql> grant 權(quán)限列表 on 庫名 to 用戶名@"客戶端地址" identified by "密碼" [ with grant option];
//with grant option 授權(quán)的用戶具有授權(quán)權(quán)限。
權(quán)限的表示方式:
all 、 usage 、select,update(name,age),delete
庫名的表示方式:
庫名.表名
庫名.
.*
用戶名:
自定義
客戶端地址表示方式:
192.168.4.117 //表示單個(gè)主機(jī)
192.168.2.% //表示192.168.2.0網(wǎng)段的所有主機(jī)
identified by "密碼" //登錄密碼
with grant option //可以有授權(quán)權(quán)限 可選項(xiàng)
####################################################################
權(quán)限撤銷 :
命令:
mysql> revoke 權(quán)限列表 on 庫名 from 用戶名@"客戶端地址";
##################################################################
刪除授權(quán)用戶: drop user 用戶名@"客戶端地址";
##################################################################
查看授權(quán)用戶的權(quán)限 show grants for 用戶@”客戶端地址“;
授權(quán)信息存儲(chǔ)位置:在授權(quán)庫mysql 下的表里。(不同存儲(chǔ)不同的授權(quán)信息)
mysql>use mysql;
mysql>show tables;
user 已有授權(quán)用戶信息 select user,host from mysql.user;
db 授權(quán)用戶對(duì)庫的訪問權(quán)限
tables_priv 記錄授權(quán)用戶對(duì)表的訪問權(quán)限
columns_priv 記錄授權(quán)用戶對(duì)表中字段的訪問權(quán)限。
########################################################################
舉例:
允許在192.168.4.254主機(jī)上使用管理員用戶連接數(shù)據(jù)庫服務(wù)器。
mysql>grant all on . to root@"192.168.4.254" identified by "123456" with grant option;
允許從網(wǎng)站服務(wù)器上使用bbsuser用戶連接 密碼是123456 只對(duì)bbsdb庫下的所有表有完全權(quán)限,沒有授權(quán)權(quán)限。
grant all on bbsdb.* to bbsuser@"192.168.4.30" identified by "123456";
運(yùn)行使用admin用戶在數(shù)據(jù)庫服務(wù)器本機(jī)登錄 密碼123456 只有查詢表記錄的權(quán)限。
grant select on . to admin@"localhost" identified by "123456";
mysql> revoke 權(quán)限列表 on 庫名 from 用戶名@"客戶端地址";
撤銷root在254主機(jī)登錄的授權(quán)權(quán)限
revoke grant option on . from root@"192.168.4.254";
撤銷root在254主機(jī)登錄的刪除記錄和修改記錄的權(quán)限
revoke delete,update on . from root@"192.168.4.254";
撤銷root在254主機(jī)登錄的所有權(quán)限
revoke all on . from root@"192.168.4.254";
#############################################################################
通過修改表記錄的方式撤銷用戶的權(quán)限。
1 修改在對(duì)應(yīng)表中的記錄信息
2 fulsh privileges;
##########################################################################
授權(quán)用戶登錄服務(wù)器后,修登錄密碼;
mysql> set password=password("密碼");
管理員重置授權(quán)用戶的登錄密碼
mysql> set password for 用戶@"客戶端地址"=password("密碼");
########################################################################
客戶端測(cè)試授權(quán):
#which mysql
#rpm -q mariadb
#mysql -h數(shù)據(jù)庫服務(wù)器的IP地址 -u用戶名 -p密碼
mysql> select @@hostname;
mysql> select user();
mysql> show grants;
############################################################################
三、數(shù)據(jù)備份與恢復(fù)(完全備份和完全恢復(fù))
備份方式:
1、物理備份: 直接拷貝庫或表對(duì)應(yīng)的文件(Myisam)
cp -r /var/lib/mysql/mysql /mysql.bak
tar -zcvf /mysql.tar.gz /var/lib/mysql/mysql/*
cp -r /mysql.bak /var/lib/mysql/mysql
chown -R mysql:mysql /var/lib/mysql/mysql
########################################################
2、邏輯備份: 執(zhí)行備份時(shí),根據(jù)已有的庫和表生成對(duì)應(yīng)sql命令,把生成的sql命令存儲(chǔ)到指定的備份文件里。
備份策略:
完全備份: 備份所有數(shù)據(jù)(表 、 庫 、 服務(wù)器)
差異備份:備份自完全備份后所有新產(chǎn)生 (備份新產(chǎn)生的數(shù)據(jù))
增量備份:備份自上一次備份后,所有新產(chǎn)生。(備份新產(chǎn)生的數(shù)據(jù))
備份數(shù)據(jù)庫要考慮的問題:
備份頻率 備份時(shí)間 備份策略 存儲(chǔ)空間 備份文件的命名(一般都以 名.sql 這樣的格式)
備份策略使用方式:
完全+增量(工作環(huán)境中使用較多)
完全+差異
執(zhí)行數(shù)據(jù)備份的方式: 周期性計(jì)劃任務(wù)crond 執(zhí)行 備份腳本
########################################################################
完全備份數(shù)據(jù)mysqldump
#mysqldump -uroot -pabc123 庫名 > 目錄名/名.sql
庫名的表示方式:
--all-databases 備份數(shù)據(jù)庫服務(wù)器的所有數(shù)據(jù)
庫名 備份一個(gè)庫里的所有數(shù)據(jù)
庫 表 備份一個(gè)表的所有數(shù)據(jù)
-B 庫名1 庫名1 庫名N 一起備份多個(gè)庫的所有數(shù)據(jù)
#########################################################################
完全恢復(fù)數(shù)據(jù)
#mysql -uroot -pabc123 studb < 目錄名/名.sql //studb庫應(yīng)提前創(chuàng)建
#########################################################################
備份腳本:
mkdir /srcriptdir
vim /srcriptdir/userdbbakall.sh
#!/bin/bash
day=date +%F
if [ ! -e /bakdir ];then
mkdir /bakdir
fi
mysqldump -uroot -pabc123 userdb > /bakdir/userdb-$day.sql
:wq
#chmod +x /srcriptdir/userdbbakall.sh
#/srcriptdir/userdbbakall.sh
#ls /bakdir/.sql
#vim /bakdir/.sql
#crontab -e
30 23 1 /srcriptdir/userdbbakall.sh &> /dev/null
:wq
看了以上關(guān)于Mysql數(shù)據(jù)庫管理員密碼如何設(shè)置問題解析,希望能給大家在實(shí)際運(yùn)用中帶來一定的幫助。本文由于篇幅有限,難免會(huì)有不足和需要補(bǔ)充的地方,如有需要更加專業(yè)的解答,可在官網(wǎng)聯(lián)系我們的24小時(shí)售前售后,隨時(shí)幫您解答問題的。