欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MySQL允許遠(yuǎn)程連接的配置指南

 更新時(shí)間:2025年06月09日 11:15:31   作者:超級(jí)小忍  
MySQL 是一個(gè)廣泛使用的開(kāi)源關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),在實(shí)際開(kāi)發(fā)中,我們經(jīng)常需要從本地或外部服務(wù)器連接到 MySQL 數(shù)據(jù)庫(kù),下面我們就來(lái)看看如何配置 MySQL 以允許遠(yuǎn)程連接

前言

MySQL 是一個(gè)廣泛使用的開(kāi)源關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)。在實(shí)際開(kāi)發(fā)中,我們經(jīng)常需要從本地或外部服務(wù)器連接到 MySQL 數(shù)據(jù)庫(kù)。本文將詳細(xì)介紹如何配置 MySQL 以允許遠(yuǎn)程連接。

準(zhǔn)備工作

服務(wù)器為 Linux

已安裝 MySQL 的服務(wù)器(本博客基于 MySQL 8.0)

擁有管理員權(quán)限的用戶

確保目標(biāo)客戶端可以通過(guò)網(wǎng)絡(luò)訪問(wèn) MySQL 服務(wù)器的 3306 端口

步驟一:修改 MySQL 配置文件

默認(rèn)情況下,MySQL 只允許本地連接(localhost)。要開(kāi)啟遠(yuǎn)程連接,需修改其配置文件。

1. 找到配置文件

Linux 系統(tǒng)一般位于 /etc/mysql/mysql.conf.d/mysqld.cnf

或者使用命令查找:

mysql --help | grep "my.cnf"

2. 修改 bind-address

找到如下行:

bind-address = 127.0.0.1

將其改為:

[mysqld]
bind-address = 0.0.0.0

這表示監(jiān)聽(tīng)所有 IP 地址上的連接請(qǐng)求。

注意:如果你使用的是云服務(wù)器(如阿里云、騰訊云),還需開(kāi)放對(duì)應(yīng)的安全組規(guī)則。

步驟二:創(chuàng)建或授權(quán)遠(yuǎn)程訪問(wèn)用戶

1.登錄 MySQL:

mysql -u root -p

2. 創(chuàng)建新用戶并授權(quán)遠(yuǎn)程訪問(wèn)

CREATE USER 'remote_user'@'%' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

‘remote_user’@‘%’ 表示任何 IP 都可以使用 remote_user 登錄。

若只允許特定 IP,可替換為 ‘remote_user’@‘192.168.1.100’。

3. (可選)修改已有用戶的權(quán)限

GRANT ALL PRIVILEGES ON *.* TO 'existing_user'@'%' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;

步驟三:重啟 MySQL 服務(wù)

使配置生效,重啟 MySQL 服務(wù):

sudo systemctl restart mysql

安全建議

避免使用 root 用戶進(jìn)行遠(yuǎn)程連接

使用強(qiáng)密碼策略

在生產(chǎn)環(huán)境中限制訪問(wèn) IP 范圍

啟用 SSL 加密連接(高級(jí)用法)

測(cè)試遠(yuǎn)程連接

使用客戶端工具(如 Navicat、DBeaver、MySQL Workbench 或命令行)嘗試連接:

mysql -h your_server_ip -u remote_user -p

如果提示連接成功,則說(shuō)明配置已生效!

云服務(wù)器注意事項(xiàng)

如果使用的是云服務(wù)器,上面操作確保無(wú)誤之后還是不能遠(yuǎn)程連接,請(qǐng)務(wù)必檢查:

安全組是否放行 3306 端口

是否關(guān)閉了防火墻(如 UFW、iptables)

是否綁定了公網(wǎng) IP(某些 VPC 環(huán)境需要注意)

方法補(bǔ)充

MySQL 設(shè)置允許遠(yuǎn)程連接完整指南

1.基礎(chǔ)配置步驟(以MySQL 8.0為例)

修改MySQL綁定地址

默認(rèn)情況下MySQL僅監(jiān)聽(tīng)127.0.0.1,需改為0.0.0.0或服務(wù)器公網(wǎng)IP。

打開(kāi)配置文件:

sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf  # Ubuntu/Debian
# 或
sudo nano /etc/my.cnf                          # CentOS/RHEL

找到 bind-address 并修改:

[mysqld]
bind-address = 0.0.0.0  # 允許所有IP訪問(wèn)(生產(chǎn)環(huán)境慎用)
# 或指定特定IP
# bind-address = 192.168.1.100

重啟MySQL服務(wù):

sudo systemctl restart mysql    # systemd系統(tǒng)
# 或
sudo service mysql restart      # init.d系統(tǒng)

創(chuàng)建遠(yuǎn)程訪問(wèn)用戶

切勿直接使用root賬戶遠(yuǎn)程連接!

登錄MySQL控制臺(tái):

mysql -u root -p

創(chuàng)建專用遠(yuǎn)程用戶:

-- MySQL 8.0+ 需指定加密插件
CREATE USER 'remote_user'@'%' IDENTIFIED WITH mysql_native_password BY 'StrongPassw0rd!';

-- 授權(quán)所有數(shù)據(jù)庫(kù)(按需縮小權(quán)限)
GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'%' WITH GRANT OPTION;

FLUSH PRIVILEGES;

關(guān)鍵參數(shù)說(shuō)明:

  • 'remote_user'@'%':允許從任何IP連接(建議改為具體IP段如'192.168.1.%')
  • mysql_native_password:兼容舊客戶端的加密方式(8.0默認(rèn)使用caching_sha2_password)

配置防火墻

開(kāi)放MySQL默認(rèn)端口3306:

# Ubuntu UFW
sudo ufw allow 3306/tcp

# CentOS Firewalld
sudo firewall-cmd --permanent --add-port=3306/tcp
sudo firewall-cmd --reload

2.高級(jí)安全加固方案

限制訪問(wèn)IP

通過(guò)MySQL用戶權(quán)限限制來(lái)源IP:

-- 僅允許192.168.1.0/24網(wǎng)段訪問(wèn)
CREATE USER 'secure_user'@'192.168.1.%' IDENTIFIED BY 'Password123!';

使用SSH隧道

更安全的連接方式(無(wú)需開(kāi)放3306端口):

ssh -L 3306:localhost:3306 user@mysql-server.com

客戶端連接本地127.0.0.1:3306即可穿透到遠(yuǎn)程MySQL。

啟用SSL加密

檢查MySQL SSL支持:

SHOW VARIABLES LIKE '%ssl%';

強(qiáng)制用戶使用SSL連接:

ALTER USER 'remote_user'@'%' REQUIRE SSL;

客戶端連接時(shí)添加參數(shù):

mysql -u remote_user -p -h mysql-host --ssl-mode=REQUIRED

審計(jì)與監(jiān)控

啟用查詢?nèi)罩荆?/p>

[mysqld]
general_log = 1
general_log_file = /var/log/mysql/query.log

使用審計(jì)插件(企業(yè)版)或第三方工具如Percona Audit Plugin。

3.連接測(cè)試與故障排查

測(cè)試遠(yuǎn)程連接

mysql -u remote_user -p -h mysql-server-ip --port=3306

常見(jiàn)錯(cuò)誤解決方案

錯(cuò)誤提示原因解決方案
ERROR 1130 (HY000)用戶權(quán)限不足檢查GRANT語(yǔ)句和用戶主機(jī)限制
ERROR 2003 (HY000)端口不通/防火墻攔截使用telnet mysql-host 3306測(cè)試
ERROR 1045 (28000)密碼錯(cuò)誤重置密碼:ALTER USER ...
Public Key Retrieval is not allowed加密插件沖突添加連接參數(shù):--ssl-mode=DISABLED

診斷工具

檢查端口監(jiān)聽(tīng)狀態(tài):

sudo netstat -tuln | grep 3306

查看實(shí)時(shí)連接:

SHOW PROCESSLIST;

到此這篇關(guān)于MySQL允許遠(yuǎn)程連接的配置指南的文章就介紹到這了,更多相關(guān)MySQL允許遠(yuǎn)程連接內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 查看mysql語(yǔ)句運(yùn)行時(shí)間的2種方法

    查看mysql語(yǔ)句運(yùn)行時(shí)間的2種方法

    網(wǎng)站運(yùn)行很慢的時(shí)候,我就特別起知道為什么這么慢,所以我查啊查,數(shù)據(jù)庫(kù)絕對(duì)是很重要的一部分,里面運(yùn)行的sql是絕對(duì)不能放過(guò)的。平時(shí)做項(xiàng)目的時(shí)候,我也會(huì)注意sql語(yǔ)句的書(shū)寫(xiě),寫(xiě)出一些高效的sql來(lái),所以我會(huì)經(jīng)常測(cè)試自己寫(xiě)的sql語(yǔ)句。我把我知道的二個(gè)方法,總結(jié)一下發(fā)出來(lái)
    2014-01-01
  • MySQL數(shù)據(jù)庫(kù)的索引原理與慢SQL優(yōu)化的5大原則

    MySQL數(shù)據(jù)庫(kù)的索引原理與慢SQL優(yōu)化的5大原則

    這篇文章主要介紹了MySQL數(shù)據(jù)庫(kù)的索引原理與慢SQL優(yōu)化的5大原則,包括:建立索引的原則,慢查詢優(yōu)化基本步驟,慢查詢優(yōu)化案例,explain使用,需要的朋友可以參考下
    2023-02-02
  • Mysql中的觸發(fā)器定義及語(yǔ)法介紹

    Mysql中的觸發(fā)器定義及語(yǔ)法介紹

    MySQL?的觸發(fā)器和存儲(chǔ)過(guò)程一樣,都是嵌入到?MySQL?中的一段程序,是?MySQL?中管理數(shù)據(jù)的有力工具,本文給大家詳細(xì)介紹mysql觸發(fā)器的定義語(yǔ)法知識(shí),感興趣的朋友一起看看吧
    2022-06-06
  • 關(guān)于SQL建表語(yǔ)句使用詳解

    關(guān)于SQL建表語(yǔ)句使用詳解

    在SQL數(shù)據(jù)庫(kù)設(shè)計(jì)中,創(chuàng)建表是基本操作,涉及定義表結(jié)構(gòu),包括列名、數(shù)據(jù)類型和約束等,本文詳細(xì)介紹建表語(yǔ)句,通過(guò)示例幫助理解,常見(jiàn)數(shù)據(jù)類型包括整數(shù)、浮點(diǎn)數(shù)、字符串、日期時(shí)間等,約束確保數(shù)據(jù)完整性,包括主鍵、唯一、非空、默認(rèn)值、外鍵和檢查約束
    2024-10-10
  • MySQL三表聯(lián)合查詢操作舉例

    MySQL三表聯(lián)合查詢操作舉例

    在mysql查詢語(yǔ)句中,為了實(shí)現(xiàn)查詢到某些信息,我們會(huì)用到多表的聯(lián)合查詢,下面這篇文章主要給大家介紹了關(guān)于MySQL三表聯(lián)合查詢操作的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-03-03
  • MySQL死鎖檢查處理的正常方法

    MySQL死鎖檢查處理的正常方法

    這篇文章主要給大家介紹了關(guān)于MySQL死鎖檢查處理的正常方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • MySQL中用戶授權(quán)以及刪除授權(quán)的方法

    MySQL中用戶授權(quán)以及刪除授權(quán)的方法

    這篇文章主要介紹了MySQL中用戶授權(quán)以及刪除授權(quán)的方法的相關(guān)資料,需要的朋友可以參考下
    2015-12-12
  • MySQL正則表達(dá)式入門(mén)教程

    MySQL正則表達(dá)式入門(mén)教程

    這篇文章主要介紹了MySQL正則表達(dá)式,一個(gè)簡(jiǎn)單的MySQL正則表達(dá)式入門(mén)教程,需要的朋友可以參考下
    2014-04-04
  • 清理Mysql general_log的方法總結(jié)

    清理Mysql general_log的方法總結(jié)

    在本篇文章里小編給大家分享的是一篇關(guān)于清理Mysql general_log的相關(guān)知識(shí)點(diǎn),需要的朋友們學(xué)習(xí)下。
    2019-10-10
  • MySQL中的SUM函數(shù)使用教程

    MySQL中的SUM函數(shù)使用教程

    這篇文章主要介紹了MySQL中的SUM函數(shù)使用教程,是MySQL入門(mén)學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-05-05

最新評(píng)論