增加使用者的方法:1、使用「CREATE USER 使用者 IDENTIFIED BY '密碼';」語句;2、使用「GRANT priv_type ON database.table TO 使用者 IDENTIFIED BY '密碼';」語句。
本教學操作環境:windows7系統、mysql8版本、Dell G3電腦。
MySQL 在安裝時,會預設建立一個名為 root 的用戶,該用戶擁有超級權限,可以控制整個 MySQL 伺服器。
在對MySQL 的日常管理和操作中,為了避免有人惡意使用root 用戶控制資料庫,我們通常會創建一些具有適當權限的用戶,盡可能地不用或少用root 用戶登入系統,以此來確保資料的安全存取。
MySQL 提供了以下 3 種方法來建立使用者。
使用CREATE USER 語句建立使用者
在mysql.user 表中新增使用者
使用GRANT 語句建立使用者
以下根據實例詳細講解這3 種方法。
1. 使用CREATE USER語句建立使用者
#可以使用 CREATE USER 語句來建立 MySQL 用戶,並設定對應的密碼。其基本語法格式如下:
CREATE USER <用户> [ IDENTIFIED BY [ PASSWORD ] 'password' ] [ ,用户 [ IDENTIFIED BY [ PASSWORD ] 'password' ]]
參數說明如下:
1) 使用者
指定建立使用者帳號,格式為user_name'@'host_name 。這裡的user_name是使用者名,host_name為主機名,也就是使用者連線 MySQL 時所用主機的名字。如果在建立的過程中,只給了使用者名,而沒指定主機名,那麼主機名稱預設為“%”,表示一組主機,即對所有主機開放權限。
3) IDENTIFIED BY子句
用於指定使用者密碼。新使用者可以沒有初始密碼,若使用者不設密碼,可省略此子句。
2) PASSWORD 'password'
PASSWORD 表示使用雜湊值設定密碼,該參數可選。如果密碼是一個普通的字串,則不需要使用 PASSWORD 關鍵字。 'password' 表示使用者登入時所使用的密碼,需要用單引號括起來。
使用 CREATE USER 語句時應注意以下幾點:
#CREATE USER 語句可以不指定初始密碼。但是從安全的角度來說,不建議這種做法。
使用 CREATE USER 語句必須擁有 mysql 資料庫的 INSERT 權限或全域 CREATE USER 權限。
使用 CREATE USER 語句建立一個使用者後,MySQL 會在 mysql 資料庫的 user 表中新增一筆新記錄。
CREATE USER 語句可以同時建立多個用戶,多個使用者以逗號隔開。
新建立的使用者擁有的權限很少,它們只能執行不需要權限的操作。如登入 MySQL、使用 SHOW 語句查詢所有儲存引擎和字元集的清單等。如果兩個用戶的用戶名相同,但主機名稱不同,MySQL 會將它們視為兩個用戶,並允許為這兩個用戶分配不同的權限集合。
範例 1
使用 CREATE USER 建立一個用戶,用戶名是 test1,密碼是 test1,主機名稱是 localhost。 SQL 語句和執行程序如下。
mysql> CREATE USER 'test1'@'localhost' IDENTIFIED BY 'test1'; Query OK, 1 rows affected (0.06 sec)
結果顯示,建立 test1 使用者成功。
在實際應用程式中,我們應避免明文指定密碼,可以透過 PASSWORD 關鍵字使用密碼的雜湊值設定密碼。
範例2
在MySQL 中,可以使用password() 函數來取得密碼的雜湊值,查看test1 雜湊值的SQL 語句和執行程序如下:
mysql> SELECT password('test1'); +-------------------------------------------+ | password('test1') | +-------------------------------------------+ | *06C0BF5B64ECE2F648B5F048A71903906BA08E5C | +-------------------------------------------+ 1 row in set, 1 warning (0.00 sec)
「*06C0BF5B64ECE2F648B5F048A71903906BA08E5C」就是test1 的雜湊。以下建立使用者 test1,SQL 語句和執行過程如下:
mysql> CREATE USER 'test1'@'localhost'IDENTIFIED BY PASSWORD '*06C0BF5B64ECE2F648B5F048A71903906BA08E5C'; Query OK, 0 rows affected, 1 warning (0.00 sec)
執行成功後就可以使用密碼「test1」登入了。
2. 使用GRANT語句新使用者
#雖然 CREATE USER 可以建立普通用戶,但這種方式不方便授予使用者權限。於是 MySQL 提供了 GRANT 語句。
使用GRANT 語句建立使用者的基本語法形式如下:
GRANT priv_type ON database.table TO <用户> [IDENTIFIED BY [PASSWORD] 'password']
其中:
##priv_type 參數表示新使用者的權限;
database.table 參數表示新使用者的權限範圍,即只能在指定的資料庫和表上使用自己的權限;
參數指定新使用者的帳號,由使用者名稱和主機名稱構成;
- ##IDENTIFIED BY
關鍵字用來設定密碼;
- password
參數表示新使用者的密碼。
下面使用 GRANT 語句建立名為 test3 的用戶,主機名稱為 localhost,密碼為 test3。該使用者對所有資料庫的所有表都有 SELECT 權限。 SQL 語句與執行程式如下:
mysql> GRANT SELECT ON*.* TO 'test3'@localhost IDENTIFIED BY 'test3'; Query OK, 0 rows affected, 1 warning (0.01 sec)
其中,“*.*” 表示所有数据库下的所有表。结果显示创建用户成功,且 test3 用户对所有表都有查询(SELECT)权限。
技巧:GRANT 语句是 MySQL 中一个非常重要的语句,它可以用来创建用户、修改用户密码和设置用户权限。教程后面会详细介绍如何使用 GRANT 语句修改密码、更改权限。
【相关推荐:mysql视频教程】
以上是mysql怎麼增加用戶的詳細內容。更多資訊請關注PHP中文網其他相關文章!

MySQL是一種開源的關係型數據庫管理系統,主要用於快速、可靠地存儲和檢索數據。其工作原理包括客戶端請求、查詢解析、執行查詢和返回結果。使用示例包括創建表、插入和查詢數據,以及高級功能如JOIN操作。常見錯誤涉及SQL語法、數據類型和權限問題,優化建議包括使用索引、優化查詢和分錶分區。

MySQL是一個開源的關係型數據庫管理系統,適用於數據存儲、管理、查詢和安全。 1.它支持多種操作系統,廣泛應用於Web應用等領域。 2.通過客戶端-服務器架構和不同存儲引擎,MySQL高效處理數據。 3.基本用法包括創建數據庫和表,插入、查詢和更新數據。 4.高級用法涉及復雜查詢和存儲過程。 5.常見錯誤可通過EXPLAIN語句調試。 6.性能優化包括合理使用索引和優化查詢語句。

選擇MySQL的原因是其性能、可靠性、易用性和社區支持。 1.MySQL提供高效的數據存儲和檢索功能,支持多種數據類型和高級查詢操作。 2.採用客戶端-服務器架構和多種存儲引擎,支持事務和查詢優化。 3.易於使用,支持多種操作系統和編程語言。 4.擁有強大的社區支持,提供豐富的資源和解決方案。

InnoDB的鎖機制包括共享鎖、排他鎖、意向鎖、記錄鎖、間隙鎖和下一個鍵鎖。 1.共享鎖允許事務讀取數據而不阻止其他事務讀取。 2.排他鎖阻止其他事務讀取和修改數據。 3.意向鎖優化鎖效率。 4.記錄鎖鎖定索引記錄。 5.間隙鎖鎖定索引記錄間隙。 6.下一個鍵鎖是記錄鎖和間隙鎖的組合,確保數據一致性。

MySQL查询性能不佳的原因主要包括没有使用索引、查询优化器选择错误的执行计划、表设计不合理、数据量过大和锁竞争。1.没有索引导致查询缓慢,添加索引后可显著提升性能。2.使用EXPLAIN命令可以分析查询计划,找出优化器错误。3.重构表结构和优化JOIN条件可改善表设计问题。4.数据量大时,采用分区和分表策略。5.高并发环境下,优化事务和锁策略可减少锁竞争。

在數據庫優化中,應根據查詢需求選擇索引策略:1.當查詢涉及多個列且條件順序固定時,使用複合索引;2.當查詢涉及多個列但條件順序不固定時,使用多個單列索引。複合索引適用於優化多列查詢,單列索引則適合單列查詢。

要優化MySQL慢查詢,需使用slowquerylog和performance_schema:1.啟用slowquerylog並設置閾值,記錄慢查詢;2.利用performance_schema分析查詢執行細節,找出性能瓶頸並優化。

MySQL和SQL是開發者必備技能。 1.MySQL是開源的關係型數據庫管理系統,SQL是用於管理和操作數據庫的標準語言。 2.MySQL通過高效的數據存儲和檢索功能支持多種存儲引擎,SQL通過簡單語句完成複雜數據操作。 3.使用示例包括基本查詢和高級查詢,如按條件過濾和排序。 4.常見錯誤包括語法錯誤和性能問題,可通過檢查SQL語句和使用EXPLAIN命令優化。 5.性能優化技巧包括使用索引、避免全表掃描、優化JOIN操作和提升代碼可讀性。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

禪工作室 13.0.1
強大的PHP整合開發環境

WebStorm Mac版
好用的JavaScript開發工具

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

SublimeText3 Linux新版
SublimeText3 Linux最新版

記事本++7.3.1
好用且免費的程式碼編輯器