mysql安裝、用戶密碼、密碼策略、授權用戶等(mysql5.7版本)
1.mysql安裝后相關目錄與文件:
主配置文件: /etc/my.cnf
數據庫目錄: /var/lib/mysql/
默認端口號: 3306
進程名: mysqld
傳輸協議: TCP
進程所有者: mysql
進程所屬組: mysql
錯誤日志文件: /var/log/mysql.log
2.mysql密碼策略:
0或者LOW 長度;
1或者MEDIUM 長度;數字、小寫/大寫,特殊字符
2或者STRONG 長度;數字、小寫/大寫,特殊字符;字典文件
3.恢復root密碼的相關配置說明(當mysql的root密碼忘記時使用)
--skip_grant_tables:此選項會讓MySQL服務器跳過驗證步驟,允許所有用戶以匿名的方式,無需做密碼驗證直接登陸MySQL服務器,並且擁有所有的操作權限。
--skip_networking:此選項會關門MySQL服務器的遠程連接。這是因為以--skip_grant_tables方式啟動MySQL服務器會有很大的安全隱患,為了降低風險,需要禁止遠程客戶端的連接。
4.mysql授權用戶的權限:
命令 權限
usage 無權限
SELECT 查詢表記錄
INSERT 插入表記錄
UPDATE 更新表記錄
DELETE 刪除表記錄
CREATE 創建庫、表
DROP 刪除庫、表
RELOAD 有重新載入授權 必須擁有reload權限,才可以執行flush [tables | logs | privileges]
SHUTDOWN 允許關閉mysql服務 使用mysqladmin shutdown 來關閉mysql
PROCESS 允許查看用戶登錄數據庫服務器的進程 ( show processlist; )
FILE 導入、導出數據
REFERENCES 創建外鍵
INDEX 創建索引
ALTER 修改表結構
SHOW DATABASES 查看庫
SUPER 關閉屬於任何用戶的線程
CREATE TEMPORARY TABLES 允許在create table 語句中使用 TEMPORARY關鍵字
LOCK TABLES 允許使用 LOCK TABLES 語句
EXECUTE 執行存在的Functions,Procedures
REPLICATION SLAVE 從主服務器讀取二進制日志
REPLICATION CLIENT 允許在主/從數據庫服務器上使用 show status命令
CREATE VIEW 創建視圖
SHOW VIEW 查看視圖
CREATE ROUTINE 創建存儲過程
ALTER ROUTINE 修改存儲過程
CREATE USER 創建用戶
EVENT 有操作事件的權限
TRIGGER, 有操作觸發器的權限
CREATE TABLESPACE 有創建表空間的權限
5.授權用戶的客戶端地址:
庫名
所有庫所有表: *.*
一個庫: 庫名.*
一張表: 庫名.表名
6.授權用戶的用戶名:
授權時自定義 要有標示性,存儲在mysql庫的user表里
7.授權用戶的客戶端地址
所有主機: %
網段內的所有主機: 192.168.1.%
1台主機: 192.168.1.1
數據庫服務器本機: lsocalhost
具體過程如下:
將下載好的軟件包使用tar -xvf 命令解壓后使用yum軟件管理工具安裝(使用yum安裝可以解決依賴關系)
提示如下則安裝成功。(也可以使用、rpm -qa | grep mysql 查看軟件是否已安裝)
啟動mysql服務
利用grep 工具篩選包括password的行,使用隨機密碼登錄mysql數據庫,現在會發現無法執行查詢語句,因為首次登錄需要修改密碼。
修改數據庫本地用戶root登錄密碼為‘Aa123456...’(如下圖修改密碼后執行查詢語句就不會報錯)
使用修改后的密碼登錄系統(修改的密碼要遵循mysql默認的密碼策略,即長度為8,包含數字、小寫/大寫,特殊字符)
修改密碼策略為0,長度為6,並設置密碼為123456(密碼策略為0是只驗證密碼長度,上述有詳細介紹)
退出當前連接,使用修改后密碼連接
上述命令行中密碼策略的修改為臨時修改,重啟服務無效,永久修改需寫入、/etc/my.cnf配置文件中,如下:
在mysql命令行下也能執行系統命令,需在命令前加system 如修改配置文件system /etc/my.cnf
查看當前密碼策略已經為LOW(0)長度為6
在配置文件中添加如下配置項重啟后實現跳過驗證恢復root密碼(必須把上述在配置文件的密碼策略注釋才會重啟成功)
重啟服務后,輸入mysql直接進入數據庫
通過mysql庫下的user表修改本地root用戶密碼為654321,
刪除剛才的跳過驗證無密碼登錄額配置或者注釋,重啟服務,使用剛剛修改的密碼654321登錄數據庫服務
新建jrjs庫.jrjs表
授權一個jrjs用戶權限為所有權限,密碼為“Aa123456.”
使用授權用戶jrjs登錄數據庫,查看當前登錄用戶權限。
以上就是關於mysql數據庫密碼,用戶授權,配置文件等的相關知識及具體操作方法。
2019-09-21