首頁 > 資料庫 > mysql教程 > mysql添加用戶可訪問不了怎麼辦

mysql添加用戶可訪問不了怎麼辦

coldplay.xixi
發布: 2020-10-20 11:19:10
原創
2356 人瀏覽過

mysql新增使用者可存取不了的解決方法:先以管理員身分登入MySQL伺服器中,建立一個MySQL使用者;然後賦予MySQL使用者權限,並執行以下指令賦予"myuser"使用者特定權限;最後為用戶新增資源限制,並驗證即可。

mysql添加用戶可訪問不了怎麼辦

#更多相關免費學習推薦:mysql教學

# #(影片)

mysql新增使用者可存取不了的解決方法:

先以管理員身分登入MySQL伺服器中。

$ mysql -u root -p

查看有曾經建立的使用者

SELECT host, user FROM mysql.user;

建立一個MySQL使用者
  •   创建一个用户名和密码分别为"myuser"和"mypassword"的用户,可访问地址为%所有,也可以设定ip或者localhost。
      mysql> CREATE USER 'myuser'@'%' IDENTIFIED BY 'mypassword';
      用户被创建后,包括加密的密码、权限和资源限制在内的所有帐号细节都会被存储在mysql这个库的user的表中。
     ** 运行下列命令,验证帐号是否创建成功**
      mysql> SELECT host, user, password FROM mysql.user WHERE user='myuser';
    登入後複製

    賦予MySQL使用者權限
  • 一個新建的MySQL使用者沒有任何存取權限,這就意味著你不能在MySQL資料庫中進行任何操作。你得賦予用戶必要的權限。以下是一些可用的權限:

  • ALL: 所有可用的權限

  • CREATE: 建立庫、表和索引

  • LOCK_TABLES: 鎖定表

  • ALTER: 修改表

  • DELETE: 刪除表格

INSERT: 插入表或列

SELECT: 檢索表或列的資料

CREATE_VIEW: 建立視圖

SHOW_DATABASES: 列出資料庫

DROP: 刪除函式庫、表格和檢視

運行以下命令賦予"myuser"使用者特定權限。

mysql> GRANT <privileges> ON <database>.<table> TO &#39;myuser&#39;@&#39;localhost&#39;;
  以上命令中,<privileges> 代表着用逗号分隔的权限列表。如果你想要将权限赋予任意数据库(或表),那么使用星号(*)来代替数据库(或表)的名字。
  例如,为所有数据库/表赋予 CREATE 和 INSERT 权限:
  mysql> GRANT CREATE, INSERT ON *.* TO &#39;myuser&#39;@&#39;localhost&#39;;
登入後複製

驗證給予使用者的全權限:

mysql> SHOW GRANTS FOR &#39;myuser&#39;@&#39;localhost&#39;;
  **将全部的权限赋予所有数据库/表:**
  mysql> GRANT ALL ON *.* TO &#39;myuser&#39;@&#39;localhost&#39;;
  **你也可以将用户现有的权限删除。使用以下命令废除"myuser"帐号的现有权限:**
  mysql> REVOKE <privileges> ON <database>.<table> FROM &#39;myuser&#39;@&#39;localhost&#39;;
登入後複製
######為使用者新增資源限制#########在MySQL中,你可以為單獨的使用者設定MySQL的資源使用限制。可用的資源限制如下:###
MAX_QUERIES_PER_HOUR: 允许的每小时最大请求数量
  MAX_UPDATES_PER_HOUR: 允许的每小时最大更新数量
  MAX_CONNECTIONS_PER_HOUR: 允许的每小时最大连接(LCTT译注:其与 MySQL全局变量: max_user_connections 共同决定用户到数据库的同时连接数量)数量
  MAX_USER_CONNECTIONS: 对服务器的同时连接量
登入後複製
######使用下列指令為"myuser"帳號增加一個資源限制:######
mysql> GRANT USAGE ON <database>.<table> TO &#39;myuser&#39;@&#39;localhost&#39; WITH <resource-limits>;
  在 <resource-limits> 中你可以指定多个使用空格分隔开的资源限制。
  例如,增加 MAXQUERIESPERHOUR 和 MAXCONNECTIONSPERHOUR 资源限制:
  mysql> GRANT USAGE ON *.* TO &#39;myuser&#39;@&#39;localhost&#39; WITH MAX_QUERIES_PER_HOUR 30 MAX_CONNECTIONS_PER_HOUR 6;
登入後複製
###### 驗證使用者的資源限制:## ####
  mysql> SHOW GRANTS FOR &#39;myuser&#39;@&#39;localhost;
登入後複製
######建立並設定一個MySQL使用者最後的一個重要步驟:######
  mysql> FLUSH PRIVILEGES;
登入後複製
###如此一來更改便生效了。現在MySQL用戶帳號就可以使用了。 ###

以上是mysql添加用戶可訪問不了怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板