您的位置:首頁技術文章
文章詳情頁

MySQL數據庫遠程訪問權限設置方式

瀏覽:150日期:2023-05-05 10:12:02
目錄
  • MySQL數據庫遠程訪問權限設置
  • 改表(當然我們要先知道表在哪,適用于整個數據庫)
    • 1、直接修改
    • 2、加指定用戶以及指定權限
  • 授權
    • 總結

      MySQL數據庫遠程訪問權限設置

      對于初學者小伙伴來說,我們安裝mysql到本地服務,再用一些圖形化工具鏈接。

      一般情況下我們都能鏈接成功;但是、在模擬真實的環境中我們的數據庫不可能直接安裝在本地機器上,大多數是在云服務器上,這種情況我們的mysql也不是路邊大巴招手即停的,你還是要約的(先買票?。灰簿褪悄愕膸ぬ柌辉试S從遠程登陸,只能在localhost登錄,怎么辦?

      接下來給大家講解兩種簡單的方法、方法再簡單要先用管理員賬戶登錄進去,這樣才可以修改

      讓我們先登錄上mysql

      改表(當然我們要先知道表在哪,適用于整個數據庫)

      • show databases;#顯示所有數據庫
      • use mysql;#使用mysql數據庫
      • show tables;#找到這個user表

      • select * from user;#查看該表所有信息

      我們能清楚的對應的主機;用戶以及用戶權限

      1、直接修改

      update user set host = "%" where user = "root";#更新root用戶的主機訪問為任何值

      2、加指定用戶以及指定權限

      insert into user(host,user) values("ip","user");#添加一個用戶user地址ip的無權限用戶(可以插入新增用戶信息時,附帶把權限也查進去,執行時會有告警,因為表中有約束,不用深究)

      新增成功,但是沒有權限。

      授權

      • 直接授權(mysql8.0版本會報錯,語法分割)
      grant all privileges on?*.*?to "user"@"ip" identified by "123456";#授權給主機為ip的user用戶開放,所有數據庫及對應表的所有權限,并且密碼設置為123456(快速簡潔)
      • 直接授權(改-針對新版本)
      create user ‘user"@‘ip" identified by ‘123456";#創建一個主機地址是ip登錄密碼是123456的user用戶grant all privileges on *.* to "user"@"ip";#鏈接上一步,給他所有權限

      • 指定授權
      create user ‘mysql"@‘%" identified by ‘123456";#創建一個主機地址可以時任何地址的登錄密碼是123456的mysql用戶(隨時隨地,在任何地方的進行登錄操作)grant select,create on myemployees.* to "mysql"@"%";#設置mysql用戶只用myemployees庫的查,創建權限

      flush privilege;#刷新下數據權限

      針對mysql8.0版本以上操作時會報錯無法鏈接;

      8.0版本因為密碼規則和語法規則的改變,所以要再次設置

      在相同情況下依次執行以下語句

      alter user ‘mysql"@‘%" identified by ‘123456" passwore expire never;#修改加密規則alter user ‘mysql"@‘%" identified by ‘123456" mysql_native_password by "123456";#再次重置密碼flush privilege;#刷新下數據權限

      總結

      以上為個人經驗,希望能給大家一個參考,也希望大家多多支持。

      標簽: MySQL
      相關文章:
      国产综合久久一区二区三区