MySQL用戶遠程訪問權限設置

mysql相關指令

  • 一. MySQL給用戶添加遠程訪問權限
    • 1. 創建或者修改用戶權限
      • 方法一:創建用戶并授予遠程訪問權限
      • 方法二:修改現有用戶的訪問限制
      • 方法三:授予特定數據庫的特定權限
    • 2. 修改 MySQL 配置文件
    • 3. 安全最佳實踐
    • 4. 測試遠程連接
    • 5. 撤銷權限或刪除用戶

一. MySQL給用戶添加遠程訪問權限

1. 創建或者修改用戶權限

方法一:創建用戶并授予遠程訪問權限

-- 創建新用戶,允許從任何主機(%)連接
CREATE USER '用戶名'@'%' IDENTIFIED BY '密碼'-- 授予該用戶對所有數據庫的所有權限(生產環境慎用)
GRANT ALL PRIVILEGES ON *.* TO '用戶名'@'%'-- 刷新權限使更改立即生效
FLUSH PRIVILEGES;

語句解釋:

  • CREATE USER: 創建新用戶賬戶
    • ‘username’@‘%’: 用戶名和允許連接的主機(%表示任何主機)
    • IDENTIFIED BY: 設置用戶密碼
  • GRANT ALL PRIVILEGES: 授予用戶所有權限
    • *.*: 第一個表示所有數據庫,第二個表示所有表
  • FLUSH PRIVILEGES: 重新加載權限表,使更改立即生效

方法二:修改現有用戶的訪問限制

-- 查看現有用戶及其訪問權限
SELECT user, host FROM mysql.user;-- 修改用戶的host限制(從localhost改為任意主機)
UPDATE mysql.user SET host='%' WHERE user='username';-- 刷新權限
FLUSH PRIVILEGES;

語句解釋:

  • SELECT user, host: 查看用戶及其允許連接的主機

  • UPDATE mysql.user: 直接修改用戶表

    • 將host從’localhost’改為’%'允許遠程連接
  • FLUSH PRIVILEGES: 使更改生效

方法三:授予特定數據庫的特定權限

-- 授予用戶對特定數據庫的特定權限
GRANT SELECT, INSERT, UPDATE, DELETE ON dbname.* TO 'username'@'%';-- 查看已授予的權限
SHOW GRANTS FOR 'username'@'%';-- 刷新權限
FLUSH PRIVILEGES;

語句解釋:

  • GRANT: 授予特定權限

    • SELECT, INSERT, UPDATE, DELETE: 只授予這些操作權限

    • dbname.*: 只對dbname數據庫的所有表有效

  • SHOW GRANTS: 查看用戶的權限

  • FLUSH PRIVILEGES: 使更改生效

2. 修改 MySQL 配置文件

  1. 找到MySQL配置文件位置:

    • Ubuntu/Debian: /etc/mysql/mysql.conf.d/mysqld.cnf

    • CentOS/RHEL: /etc/my.cnf 或 /etc/mysql/my.cnf

  2. 編輯配置文件:

sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
  1. 找到并修改以下行:
# 原內容可能是
bind-address = 127.0.0.1# 修改為(允許所有IP連接)
bind-address = 0.0.0.0# 或者注釋掉這行
# bind-address = 127.0.0.1
  1. 重啟MySQL服務:
sudo systemctl restart mysql
# 或
sudo service mysql restart

3. 安全最佳實踐

  1. 最小權限原則:
-- 只授予必要的最小權限
GRANT SELECT ON dbname.tablename TO 'username'@'specific_ip';
  1. 限制訪問IP:
-- 只允許特定IP連接
CREATE USER 'username'@'192.168.1.100' IDENTIFIED BY 'password';
  1. 定期審計權限:
-- 查看所有用戶權限
SELECT user, host FROM mysql.user;-- 查看特定用戶權限
SHOW GRANTS FOR 'username'@'%';
  1. 使用SSH隧道(更安全):
ssh -L 3306:localhost:3306 username@mysql-server-ip
  1. 修改默認端口(可選):
# 在my.cnf中添加
[mysqld]
port = 3307

4. 測試遠程連接

在遠程機器上測試:

mysql -u username -p -h mysql-server-ip

5. 撤銷權限或刪除用戶

-- 撤銷所有權限
REVOKE ALL PRIVILEGES ON *.* FROM 'username'@'%';-- 刪除用戶
DROP USER 'username'@'%';-- 刷新權限
FLUSH PRIVILEGES;

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/82829.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/82829.shtml
英文地址,請注明出處:http://en.pswp.cn/web/82829.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

如何使用 BPF 分析 Linux 內存泄漏,Linux 性能調優之 BPF 分析內核態、用戶態內存泄漏

寫在前面 博文內容為 通過 BCC 工具集 memleak 進行內存泄漏分析的簡單認知包括 memleak 腳本簡單認知,內核態(內核模塊)、用戶態(Java,Python,C)內存跟蹤泄漏分析 Demo理解不足小伙伴幫忙指正 ??,生活加油知其不可奈何而安之若命,德之至也。----《莊子內篇人間世》 …

谷歌Sign Gemma: AI手語翻譯,溝通從此無界!

嘿,朋友們!想象一下,語言不再是交流的障礙,每個人都能順暢表達與理解。這聽起來是不是很酷?谷歌最新發布的Sign Gemma AI模型,正朝著這個激動人心的未來邁出了一大步!它就像一位隨身的、不知疲倦…

全生命周期的智慧城市管理

前言 全生命周期的智慧城市管理。未來,城市將在 實現從基礎設施建設、日常運營到數據管理的 全生命周期統籌。這將避免過去智慧城市建設 中出現的“碎片化”問題,實現資源的高效配 置和項目的協調發展。城市管理者將運用先進 的信息技術,如物…

最新Spring Security實戰教程(十七)企業級安全方案設計 - 多因素認證(MFA)實現

🌷 古之立大事者,不惟有超世之才,亦必有堅忍不拔之志 🎐 個人CSND主頁——Micro麥可樂的博客 🐥《Docker實操教程》專欄以最新的Centos版本為基礎進行Docker實操教程,入門到實戰 🌺《RabbitMQ》…

logstash拉取redisStream的流數據,并存儲ES

先說結論, window驗證logstash截至2025-06-06 是沒有原生支持的。 為啥考慮用redisStream呢?因為不想引入三方的kafka等組件, 讓服務部署輕量化, 所以使用現有的redis來實現, 為啥不用list呢? 已經用strea…

IEC 61347-1:2015 燈控制裝置安全通用要求詳解

IEC 61347-1:2015 燈控制裝置安全通用要求詳解 IEC 61347-1:2015《燈控制裝置 第1部分:一般要求和安全要求》是國際電工委員會(IEC)制定的關于燈控制裝置安全性能的核心基礎標準。它為各類用于啟動和穩定工作電流的燈控制裝置(如…

26、跳表

在C標準庫中,std::map 和 std::set 是使用紅黑樹作為底層數據結構的容器。 紅黑樹是一種自平衡二叉搜索樹,能夠保證插入、刪除和查找操作的時間復雜度為O(log n)。 以下是一些使用紅黑樹的C標準庫容器: std::map:一種關聯容器&a…

LabVIEW音頻測試分析

LabVIEW通過讀取指定WAV 文件,實現對音頻信號的播放、多維度測量分析功能,為音頻設備研發、聲學研究及質量檢測提供專業工具支持。 主要功能 文件讀取與播放:支持持續讀取示例數據文件夾內的 WAV 文件,可實時播放音頻以監聽被測信…

JUC并發編程(二)Monitor/自旋/輕量級/鎖膨脹/wait/notify/鎖消除

目錄 一 基礎 1 概念 2 賣票問題 3 轉賬問題 二 鎖機制與優化策略 0 Monitor 1 輕量級鎖 2 鎖膨脹 3 自旋 4 偏向鎖 5 鎖消除 6 wait /notify 7 sleep與wait的對比 8 join原理 一 基礎 1 概念 臨界區 一段代碼塊內如果存在對共享資源的多線程讀寫操作&#xf…

Doris 與 Elasticsearch:誰更適合你的數據分析需求?

一、Doris 和 Elasticsearch 的基本概念 (一)Doris 是什么? Doris 是一個用于數據分析的分布式 MPP(大規模并行處理)數據庫。它主要用于存儲和分析大量的結構化數據(比如表格數據)&#xff0c…

使用Virtual Serial Port Driver+com2tcp(tcp2com)進行兩臺電腦的串口通訊

使用Virtual Serial Port Drivercom2tcp或tcp2com進行兩臺電腦的串口通訊 問題說明解決方案方案三具體操作流程網上教程軟件安裝拓撲圖準備工作com2tcp和tcp2com操作使用串口助手進行驗證 方案三存在的問題數據錯誤通訊延時 問題說明 最近想進行串口通訊的一個測試&#xff0c…

transformer和 RNN以及他的幾個變體區別 改進

Transformer、RNN 及其變體(LSTM/GRU)是深度學習中處理序列數據的核心模型,但它們的架構設計和應用場景有顯著差異。以下從技術原理、優缺點和適用場景三個維度進行對比分析: 核心架構對比 模型核心機制并行計算能力長序列依賴處…

CSS6404L 在物聯網設備中的應用優勢:低功耗高可靠的存儲革新與競品對比

物聯網設備對存儲芯片的需求聚焦于低功耗、小尺寸、高可靠性與傳輸效率,Cascadeteq 的 CSS6404L 64Mb Quad-SPI Pseudo-SRAM 憑借差異化技術特性,在同類產品中展現顯著優勢。以下從核心特性及競品對比兩方面解析其應用價值。 一、CSS6404L 核心產品特性…

go語言map擴容

map是什么? ?在Go語言中,map是一種內置的無序key/value鍵值對的集合,可以根據key在O(1)的時間復雜度內取到value,有點類似于數組或者切片結構,可以把數組看作是一種特殊的map,數組的key為數組的下標&…

2025年SDK游戲盾實戰深度解析:防御T級攻擊與AI反作弊的終極方案

一、引言:游戲安全的“生死防線” 2025年,全球游戲行業因DDoS攻擊日均損失3.2億元,攻擊峰值突破8Tbps,且70% 的攻擊為混合型(DDoSCC)。傳統高防IP因延遲高、成本貴、協議兼容性差,已無法滿足實…

【Linux】LInux下第一個程序:進度條

前言: 在前面的文章中我們學習了LInux的基礎指令 【Linux】初見,基礎指令-CSDN博客【Linux】初見,基礎指令(續)-CSDN博客 學習了vim編輯器【Linux】vim編輯器_linux vim insert-CSDN博客 學習了gcc/g【Linux】編譯器gc…

Web前端基礎

### 一、瀏覽器 火狐瀏覽器、谷歌瀏覽器(推薦)、IE瀏覽器 推薦谷歌瀏覽器原因: 1、簡潔大方,打開速度快 2、開發者調試工具(右鍵空白處->檢查,打開調試模式) ### 二、開發工具 核心IDE工具 1. Visual Studio Code (VS Code)?…

C++調試(肆):WinDBG分析Dump文件匯總

目錄 1.前言 2.WinDBG中常用的指令 3.分析異常時要關注的信息 4.心得 前言 本篇博客主要針如何使用WinDBG工具調試Dump文件的流程進行一個講解,具體捕獲的Dump文件也是前兩節例子中生成的Dump文件。 WinDBG中常用的指令 關于WinDBG調試時常用的指令主要分為以下幾種…

SOC-ESP32S3部分:33-聲學前端模型ESP-SR

飛書文檔https://x509p6c8to.feishu.cn/wiki/YnbmwtqI5iBwE3kHA7AcZ3yTnLf ESP-SR 是樂鑫官方開發的一個音頻組件,支持以下模塊: 聲學前端算法 AFE喚醒詞檢測 WakeNet命令詞識別 MultiNet語音合成(目前只支持中文) 組件地址&am…

基于vscode,idea,java,html,css,vue,echart,maven,springboot,mysql數據庫,在線考試系統

詳細視頻:【基于vscode,idea,java,html,css,vue,echart,maven,springboot,mysql數據庫,在線考試系統-嗶哩嗶哩】 https://b23.tv/7hwmwmQ