dcl:許可權級別:1. global level
所有庫,所有表的許可權。
2. database level
某個資料庫中的所有表的許可權。
3 .table level
庫中的某個表的許可權
4. column level
表中的某個字段,的許可權。
mysql使用者管理: 1建立使用者 create user user1@「locallhost」 identified by 『密碼』;
create:建立;
user;使用者
user1;使用者名稱自定義;
@分隔符
「localhost」 允許登入的主機(ip)
identified by 身份認證;
2,刪除使用者:drop user 「user1@localhost」;
3,修改使用者密碼:
root修改自己密碼:第一種mysqladmin -uroot -p『密碼』 password 『新密碼』
第二種set password=password('新密碼'); 改完密碼要重新整理許可權:flush privileges;
假如忘記了root密碼,可以去/etc/my.cnf去新增跳過密碼配置:skip-grant-tables
重啟下mysqil 在登陸就是無密碼登入
然後修改密碼之後再去將配置刪除掉,不然資料庫是誰都可以進去的。
注意修改完配置要重啟下服務。
mysql許可權原理:
grant 許可權列表 on 庫名.表名 to 「使用者名稱@客戶端主機「 【identified by 『密碼』with option引數】
許可權列表;all 所有許可權(不到闊授權許可權), slelct,update 查詢更新
資料庫,表名 . 所以庫下的所有表, web.* web庫下的所有表, web。stu_info web庫下的stu_info表。
客戶端主機:% 所有主機,192.168.2.% 這個網段的所以主機, 192.168.2.10 指定主機, localhost 指定主機。
with_option引數 :grant option 授權選項
mysql許可權示例
賦予許可權
授權目標
授予admin3 對bbs庫 所有的表,具有所有許可權(不包含授權)
grant all on bbs.* to admin3@'%' identified by 'qianfeng@13910604684';
賦權示例
1.準備測試賬戶
root賬戶建立
create user admin3@'%' identified by 'qianfeng@123';
2.授權賬戶
root賬戶授權
grant all on bbs.* to admin3@'%' identified by 'qianfeng@13910604684';
3.使用測試賬戶運算元據庫
[root@localhost ~]# mysql -uadmin3 -p'qianfeng@123'
mysql> create database bbs;
試試建立別的庫
mysql> create database bba;
error 1044 (42000): access denied for user 'admin3'@'%' to database 'bba'
進入bbs庫,建立資料表和插入資料。
授權驗證完畢
**許可權
檢視許可權
檢視自己的許可權
show grants\g
檢視別人的許可權
show grants for admin3@'%'\g
**許可權revoke
語法revoke 許可權列表 on 資料庫名 from 使用者名稱@『客戶端主機』
示例revoke all privileges on bbs.* from admin3@』%』; //**所有許可權
刪除使用者的版本問題
5.6之前,先 revoke all privilege 再 drop user
5.7之後,直接drop user
日誌:一,日誌分類:1 錯誤日誌 :啟動,停止,關閉失敗報錯。rpm安裝日誌位置 /var/log/mysqld.log
2 通用查詢日誌:所有的查詢都記下。
3 二進位制日誌:實現備份,增量備份。只記錄改變資料,除了select都記。
4 中繼日誌:讀取主伺服器的binlog,在本地回放。保持一致。
5 slow log:慢查詢日誌,指導調優,定義某乙個查詢語句,定義超時時間,通過日誌提供調優建議給開發人員。
6 ddl log: 定義語句的日誌。
二、error log
vim /etc/my.cnf
進入主配置檔案,觀察日誌是否啟動。
log-error=/var/log/mysqld.log
該欄位,標記是否啟動日誌,以及日誌位置。
如果哪天mysql服務起不來了,請來這個日誌檔案看看。
三、binary log
預設沒有開啟,二進位制日誌
啟動二進位制日誌
# vim /etc/my.cnf
log_bin
新增該欄位。指啟動二進位制日誌
server-id=2
群集問題,必須指定該主機的序號。數字隨意
# systemctl restart mysqld
重啟資料庫
測試1 檢視二進位制日誌檔案當前狀態
ls /var/lib/mysql/*bin*
查詢二進位制檔案生成完成。
mysqlbinlog -v /var/lib/mysql/localhost-bin.000001
檢視二進位制檔案日誌。後續講解
# at 123
找到乙個記錄位置
2 進入資料庫,進行資料操作
創庫,創表,創資料(過程略)
3 完成二進位制日誌啟動,查詢測試
mysqlbinlog -v /var/lib/mysql/localhost-bin.000001
找到剛才建立的記錄即可。
四、slow query log
預設慢查詢日誌未開啟
開啟慢查詢日誌功能
vim /etc/my.cnf
加入下面2行配置
slow_query_log=1
啟動慢查詢日誌
這個引數設定為on,可以捕獲執行時間超過一定數值的sql語句。
long_query_time=3
當sql語句執行時間超過此數值時,就會被記錄到日誌中,建議設定為1或者更短。
重啟伺服器
#systemctl restart mysqld
檢視慢查詢日誌檔案
#ll /var/lib/mysql/*slow*
檢視日誌檔案已經生成
模擬慢查詢
mysql>select benchmark(500000000,2*3);
基本測試語句,測試乙個超長時間的查詢。
課後作業:收集資料庫壓力測試工具資訊。(面試題)
驗證慢查詢日誌
#tail /var/lib/mysql/localhost-slow.log
觀察長查詢日誌記錄,記錄了剛才超長的查詢結果。
稍後反饋給開發部,進行優化。
OpenStack 開源雲計算專案
時下雲計算如火如荼,眾多企業紛紛推出雲計算相關的應用,不少還搭建企業私有雲和少數公有雲 代表為amazon 然而,業界仍然缺乏一套實用的雲計算管理平台,很大程度上提高了雲計算應用的門檻,制約了雲服務的發展。作為開源的iaas infrastructure as a service 平台,openst...
雲計算標準和開源專案
最近的三個公告在開放性和標準方面體現了雲生態環境的演變。openstack和apache deltacloud有相似的目標 構建輕量級的rest api,可以通過http網路訪問雲。openstack更關注公有雲的提供者,deltacloud則更多聚焦在私有雲上面。dmtf的工作更加基礎。首先,他們...
RackSpaceCIO 雲計算需要開源作業系統
本文講的是rackspacecio 雲計算需要開源作業系統,011年5月18日 20日,由中國電子學會主辦的中國 雲計算大會在北京國家會議中心隆重召開。本次大會的主題為 探尋 雲計算應用之路 致力於促進國內外雲計算最新交流與合作,務實推動雲計算應用,加快雲計算產業發展和產業鏈完善,展示國內外雲計算最...