1. 程式人生 > >centos7下mysql 使用者管理和許可權設定

centos7下mysql 使用者管理和許可權設定

1.進入mysql命令列,輸入root及密碼
[[email protected] ~]# mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 19
Server version: 5.7.22 MySQL Community Server (GPL)

Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

2.使用者管理及許可權設定
// 管理使用者
mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed

//查詢使用者
mysql> select host,user from user;
+-----------+---------------+
| host      | user          |
+-----------+---------------+
| %         | root          |
| %         | test          |
| localhost | mysql.session |
| localhost | mysql.sys     |
| localhost | root          |
+-----------+---------------+
5 rows in set (0.00 sec)

//建立使用者(使用者:admin,密碼:123456)
mysql> create user admin identified by '123456';
Query OK, 0 rows affected (0.00 sec)

// 刪除使用者admin
mysql> drop user admin;
Query OK, 0 rows affected (0.00 sec)

// 重新建立使用者(使用者:admins,密碼:123456)
mysql> create user admins identified by '123456';
Query OK, 0 rows affected (0.00 sec)

mysql> select host, user from user;
+-----------+---------------+
| host      | user          |
+-----------+---------------+
| %         | admins        |
| %         | root          |
| %         | test          |
| localhost | mysql.session |
| localhost | mysql.sys     |
| localhost | root          |
+-----------+---------------+
6 rows in set (0.00 sec)

// 檢視使用者admins的許可權
mysql> show grants for admins;
+------------------------------------+
| Grants for 
[email protected]
% | +------------------------------------+ | GRANT USAGE ON *.* TO 'admins'@'%' | +------------------------------------+ 1 row in set (0.00 sec) // 賦予許可權(給使用者admins,授予資料庫test的查詢許可權) mysql> grant select on test.* to admins; Query OK, 0 rows affected (0.00 sec) // 檢視使用者admins的許可權 mysql> show grants for admins; +------------------------------------------+ | Grants for
[email protected]
% | +------------------------------------------+ | GRANT USAGE ON *.* TO 'admins'@'%' | | GRANT SELECT ON `test`.* TO 'admins'@'%' | +------------------------------------------+ 2 rows in set (0.00 sec) // 收回許可權(對使用者admins,收回資料庫test的查詢許可權) mysql> revoke select on test.* from admins; Query OK, 0 rows affected (0.01 sec) // 檢視使用者admins的許可權 mysql> show grants for admins; +------------------------------------+ | Grants for
[email protected]
% | +------------------------------------+ | GRANT USAGE ON *.* TO 'admins'@'%' | +------------------------------------+ 1 row in set (0.00 sec) // 賦予許可權(給使用者admins,授予資料庫test的查詢、更新、刪除、插入等許可權) mysql> grant select, update, delete, insert on test.* to admins; Query OK, 0 rows affected (0.00 sec) // 檢視使用者admins的許可權 mysql> show grants for admins; +------------------------------------------------------------------+ | Grants for [email protected]% | +------------------------------------------------------------------+ | GRANT USAGE ON *.* TO 'admins'@'%' | | GRANT SELECT, INSERT, UPDATE, DELETE ON `test`.* TO 'admins'@'%' | +------------------------------------------------------------------+ 2 rows in set (0.01 sec) // 賦予許可權(給使用者admins,授予資料庫test的新建表、刪除表或刪除資料庫等許可權) mysql> grant create,drop on test.* to admins; Query OK, 0 rows affected (0.00 sec) // 檢視使用者admins的許可權 mysql> show grants for admins; +--------------------------------------------------------------------------------+ | Grants for [email protected]% | +--------------------------------------------------------------------------------+ | GRANT USAGE ON *.* TO 'admins'@'%' | | GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP ON `test`.* TO 'admins'@'%' | +--------------------------------------------------------------------------------+ 2 rows in set (0.00 sec) // 重新整理許可權(使設定的許可權生效) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) // 檢視root的許可權 mysql> show grants for root; +-------------------------------------------+ | Grants for [email protected]% | +-------------------------------------------+ | GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' | +-------------------------------------------+ 1 row in set (0.00 sec)

以下是使用者可以享受的常見可能許可權的簡短列表。

  • ALL PRIVILEGES - 正如我們前面所看到的,這將允許MySQL使用者訪問指定的資料庫(或者如果系統中沒有選擇資料庫)
  • CREATE-允許他們建立新的表或資料庫
  • DROP-允許他們刪除表或資料庫
  • DELETE-允許他們從表中刪除行
  • INSERT-允許它們向表中插入行
  • SELECT-允許他們使用Select命令來讀取資料庫
  • UPDATE-允許他們更新錶行
  • GRANT OPTION - 允許他們授予或刪除其他使用者的許可權

要向特定使用者提供許可權,可以使用此框架:

GRANT [type of permission] ON [database name].[table name] TO ‘[username]’@'localhost’;


如果要向其授予對任何資料庫或任何表的訪問許可權,請確保在資料庫名稱或表名稱的地方放置星號(*)。
每次更新或更改許可權時,請務必使用Flush Privileges命令。


如果您需要撤消許可權,則結構與授予的結構幾乎相同:
REVOKE [type of permission] ON [database name].[table name] FROM ‘[username]’@‘localhost’;


正如您可以使用DROP刪除資料庫一樣,您可以使用DROP完全刪除使用者:
DROP USER ‘demo’@‘localhost’;


要測試您的新使用者,請通過鍵入登出
quit


並使用此命令在終端中重新登入:
mysql -u [username]-p

相關推薦

centos7mysql 使用者管理許可權設定

1.進入mysql命令列,輸入root及密碼 [[email protected] ~]# mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or

mysql 使用者管理許可權設定

使用者管理 mysql>use mysql; 檢視 mysql> select host,user,password from user ; 建立 mysql> create user  test   IDENTIFIED by 'xxxxx'

mysql 使用者管理許可權設定Mysql初始化root密碼允許遠端訪問

grant 普通資料使用者,查詢、插入、更新、刪除 資料庫中所有表資料的權利。 grant select on testdb.* to [email protected]’%’ grant insert on testdb.* to [email protected]’%’ grant

linuxssh/sftp配置許可權設定

基於 ssh 的 sftp 服務相比 ftp 有更好的安全性(非明文帳號密碼傳輸)和方便的許可權管理(限制使用者的活動目錄)。 1、開通 sftp 帳號,使使用者只能 sftp 操作檔案, 而不能 ssh 到伺服器 2、限定使用者的活動目錄,使使用者只能在指定的目錄下活動,使用 sftp 的 Chroot

CentOS7Redis的安裝設定開機啟動

安裝 以下命令預設都是在root許可權下執行 wget http://download.redis.io/releases/redis-5.0.2.tar.gz tar xvzf redis-5.0.2.tar.gz cd redis-5.0.2 make #編譯 make i

centos7安裝mysql8.0.12及設定許可權

一、mysql版本介紹 mysql的官網為:https://www.mysql.com/ 在官網上可以看到多個版本,主要版本如下, 1、MySQL Community Server 社群版本,開源免費,但不提供官方技術支援。2、MySQL Enterprise Edition 企業版本,需付費,可以試用30天

Linuxmongodb使用者管理設定遠端登陸

折騰了下linux伺服器上的mongodb的遠端登陸,遇到了點問題,在這裡記錄下來。以備以後查詢。 前提:已經在linux上安裝好了mongodb。安裝方法這裡不說了,網上各種有。 本地用到的工具(windows):mongoChef(一個視覺化

[Redis]WindowsRedis的安裝、許可權設定在Python中使用

Windows下Redis的安裝、許可權設定和在Python中使用 最近趕專案趕得整個人有點懵,現在一看到IDEA就有點發怵,所以想著搞點沒接觸過的東西放鬆下心情。剛剛好之前一直對NOSQL很感興趣,所以試著玩了一下Redis。 安裝 個人推薦下載

奪命雷公狗---linux NO:27 linux的密碼管理用戶切換以及sudo的使用

意思 發現 which window 明顯 能開 操作 賬戶 修改 我們在windows下用戶名是可以設置空密碼登錄的,但是在linux 裏面必須要設置一個密碼才可以登錄,否則會失敗的。。。 在linux 下設置密碼可以使用 passwd 這個命令來進行設置。。。 但是

LinuxMySQL的備份恢復

mysql備份 再也不用擔心數據丟失了 MySQL備份的原因 1. 災難恢復 2. 審計 3. 測試1234512345mysql的備份類型 1. 根據服務器的在線狀態: 熱備:服務器處於運行狀態 冷備:服務器出去停止狀態 溫備:服務器處於半離線狀態,只能讀,但是不能

WindowsMySQL日誌管理(Linux相似)1.1

-h 發現 註意 line _id mod sni ans avi 為什麽要開啟數據庫的日誌 當多個程序都在使用數據庫的時候。我們的數據庫有時候竟然還會掛掉。想找原因?發現沒日誌可查。各個程序自己的日誌又不能找到關鍵原因。所以要開啟數據庫的日誌系統。 控制日誌大

centos7redis的安裝使用

ati moni fire swa rdb usr 是否 監聽 redis命令 一、centos7上安裝redis 安裝:尊重作者:http://www.cnblogs.com/web424/p/6796993.html 關閉防火墻:systemctl stop

LinuxMySQL的安裝啟動(轉載)

enable linu char cal mysql用戶 客戶端程序 ast 初學 unix 原文鏈接:http://www.linuxidc.com/Linux/2016-07/133234.htm 一、MySQL各類安裝方法的比較 在Linux系統下,MySQL有3種主

ubuntu16.04mysql的安裝卸載。

root密碼 編輯 ide conf oot 提示 ubunt ica ges 一、  以前都是在windows上使用mysql數據庫,到Linux上還不是很熟悉,這也作為自己的一個記錄。   首先MySQL官方也給出了兩種安裝方式:   一:下載安裝包的形式, 因為我個人

centos7編譯安裝lnmpnginx代理實驗

ket orm pass glib href status log nal listen 1、先安裝mysql cd /usr/local/src wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.35-linux

CentOS7mysql忘記root密碼的處理方法

uri mys ati pac span ble spa AS gin 1. vi /etc/my.cnf,在[mysqld]中添加 skip-grant-tables 例如: [mysqld] skip-grant-tables datadir=/var/lib/

Centos7 mysql 5.7通過 amoeba 讀寫分離

客戶 兩臺 bst ins 同步 狀態 文件中 數據庫管理 mct Centos7 下 MYSQL 讀寫分離 mysql介紹 MySQL是一個關系型數據庫管理系統,由瑞典MySQL AB 公司開發,目前屬於 Oracle 旗下產品。MySQL 是最流行的關系型數據庫管理系統

Centos7 mysql大小寫敏感問題

http 節點 centos 否則 mys com ice 添加 mysq 在Centos7 下mysql大小寫敏感問題,會導致程序運行時找不到對應的表。 解決辦法: 第一步:編輯/etc/my.cnf文件,在[mysqld]節下 添加 lower_case_table_n

Window10Mysql的安裝配置

隨機密碼 blank 我的電腦 必須 有一個 應該 pre mar for 下載MYSQL 官網下載MYSQL5.7.21版本,鏈接地址https://www.mysql.com/downloads/。下載流程圖如下: 進入官網點擊Community,下載社區版。

CentOS7 MySQL 5.7.23 & XtraBackup 24 做數據備份——安裝軟件

解決方法 conf install name urn ace 初始化 示例 from 在兩臺機子上同時操作下面的步驟 首先安裝MySQL,從官網下載相對應版本的RPM包 mysql-community-client-5.7.23-1.el7.x86_64.rpm mys