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

允許遠(yuǎn)程訪問(wèn)MySQL的實(shí)現(xiàn)方式

 更新時(shí)間:2024年01月15日 08:38:38   作者:timi先生  
這篇文章主要介紹了允許遠(yuǎn)程訪問(wèn)MySQL的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

如何允許遠(yuǎn)程訪問(wèn) MySQL

現(xiàn)在許多網(wǎng)站和應(yīng)用程序一開(kāi)始的 Web 服務(wù)器和數(shù)據(jù)庫(kù)后端都托管在同一臺(tái)計(jì)算機(jī)上。

隨著時(shí)間的推移,這樣的方式可能會(huì)變得很麻煩并且難以擴(kuò)展。

常見(jiàn)的解決方案

是通過(guò)設(shè)置遠(yuǎn)程數(shù)據(jù)庫(kù)來(lái)分離這些功能,從而允許服務(wù)器和數(shù)據(jù)庫(kù)在各自的計(jì)算機(jī)上按照自己的節(jié)奏增長(zhǎng)。

用戶在嘗試設(shè)置遠(yuǎn)程 MySQL 數(shù)據(jù)庫(kù)時(shí)遇到的最常見(jiàn)問(wèn)題之一是他們的 MySQL 實(shí)例僅配置為偵聽(tīng)本地連接。

這是 MySQL 的默認(rèn)設(shè)置,但它不適用于遠(yuǎn)程數(shù)據(jù)庫(kù)設(shè)置,因?yàn)?MySQL 必須能夠偵聽(tīng)可訪問(wèn)服務(wù)器的*外部IP 地址。

*要啟用此功能,請(qǐng)打開(kāi)mysqld.cnf`文件:

sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

導(dǎo)航到以指令開(kāi)頭的行bind-address。

它看起來(lái)像這樣:

/etc/mysql/mysql.conf.d/mysqld.cnf

. . .
lc-messages-dir = /usr/share/mysql
skip-external-locking
#
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address            = 127.0.0.1
. . .

默認(rèn)情況下,該值設(shè)置為127.0.0.1,這意味著服務(wù)器將僅查找本地連接。

所以需要更改此指令以引用外部 IP 地址。

可以將此指令設(shè)置為通配符 IP 地址,*、::或0.0.0.0:

/etc/mysql/mysql.conf.d/mysqld.cnf

. . .
lc-messages-dir = /usr/share/mysql
skip-external-locking
#
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address            = 0.0.0.0
. . .

**注意:**在某些版本的 MySQL 中,默認(rèn)情況下該bind-address指令可能不在mysqld.cnf文件中。

在這種情況下,請(qǐng)將以下突出顯示的行添加到文件底部:

/etc/mysql/mysql.conf.d/mysqld.cnf

. . .
[mysqld]
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
datadir         = /var/lib/mysql
log-error       = /var/log/mysql/error.log
bind-address            = 0.0.0.0

更改此行后,保存并關(guān)閉文件。

然后重新啟動(dòng) MySQL 服務(wù)以使所做的更改生效:

sudo systemctl restart mysql

如果現(xiàn)在有一個(gè)現(xiàn)有的 MySQL 用戶帳戶,打算用于從遠(yuǎn)程主機(jī)連接到數(shù)據(jù)庫(kù),則需要重新配置該帳戶以從遠(yuǎn)程服務(wù)器而不是localhost進(jìn)行連接。

則使用 MySQL root 用戶或其他特權(quán)用戶帳戶打開(kāi) MySQL 客戶端:

sudo mysql

如果root啟用了密碼身份驗(yàn)證,則需要使用以下命令來(lái)訪問(wèn) MySQL shell:

mysql -u root -p

運(yùn)行以下命令,確保更改sammy為您的 MySQL 用戶帳戶的名稱(chēng)和remote_server_ip遠(yuǎn)程服務(wù)器的 IP 地址:

RENAME USER 'sammy'@'localhost' TO 'sammy'@'remote_server_ip';

或者,可以使用以下命令創(chuàng)建一個(gè)僅從遠(yuǎn)程主機(jī)連接的新用戶帳戶:

CREATE USER 'sammy'@'remote_server_ip' IDENTIFIED BY 'password';

注意:此命令將創(chuàng)建一個(gè)使用 MySQL 的默認(rèn)身份驗(yàn)證插件caching_sha2_password 進(jìn)行身份驗(yàn)證的用戶。但是,某些版本的 PHP 存在一個(gè)已知問(wèn)題,可能會(huì)導(dǎo)致此插件出現(xiàn)問(wèn)題。

如果計(jì)劃將此數(shù)據(jù)庫(kù)與 PHP 應(yīng)用程序(例如 phpMyAdmin)一起使用,則創(chuàng)建一個(gè)遠(yuǎn)程用戶,該用戶將使用較舊但仍然安全的mysql_native_password插件進(jìn)行身份驗(yàn)證:

CREATE USER 'sammy'@'remote_server_ip' IDENTIFIED WITH mysql_native_password BY 'password';

如果不確定,則可以創(chuàng)建一個(gè)用戶進(jìn)行身份驗(yàn)證,例如使用以下命令進(jìn)行身份驗(yàn)證:(注意用戶和IP)

ALTER USER 'sammy'@'remote_server_ip' IDENTIFIED WITH mysql_native_password BY 'password';

然后根據(jù)特定需求授予新用戶適當(dāng)?shù)臋?quán)限。授權(quán)這玩意到處都用,下面是一個(gè)示例:

GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES, RELOAD on *.* TO 'sammy'@'remote_server_ip' WITH GRANT OPTION;

然后刷新權(quán)限:

FLUSH PRIVILEGES;

然后就可以退出MySQL客戶端了:

exit

最后,假設(shè)已經(jīng)在數(shù)據(jù)庫(kù)服務(wù)器上配置了防火墻,打開(kāi)了端口3306(MySQL 的默認(rèn)端口)。

如果只計(jì)劃從一臺(tái)特定計(jì)算機(jī)訪問(wèn)數(shù)據(jù)庫(kù)服務(wù)器,則可以使用以下命令授予該計(jì)算機(jī)遠(yuǎn)程連接數(shù)據(jù)庫(kù)的獨(dú)占權(quán)限。

確保替換remote_IP_address為計(jì)劃連接的機(jī)器的實(shí)際 IP 地址:

sudo ufw allow from remote_IP_address to any port 3306

如果將來(lái)需要從其他計(jì)算機(jī)訪問(wèn)數(shù)據(jù)庫(kù),可以使用此命令臨時(shí)授予它們?cè)L問(wèn)權(quán)限。

只需記住包含它們各自的 IP 地址即可。

或者,可以使用以下命令允許從任何IP 地址連接到 MySQL 數(shù)據(jù)庫(kù):

警告:此命令將使任何人都可以訪問(wèn)你的 MySQL 數(shù)據(jù)庫(kù)。如果數(shù)據(jù)庫(kù)包含任何敏感數(shù)據(jù),請(qǐng)勿運(yùn)行它。

sudo ufw allow 3306

接下來(lái),嘗試從另一臺(tái)計(jì)算機(jī)遠(yuǎn)程訪問(wèn)數(shù)據(jù)庫(kù):

注意:如果添加了防火墻規(guī)則以僅允許來(lái)自特定 IP 地址的連接,則必須嘗試使用與該地址關(guān)聯(lián)的計(jì)算機(jī)來(lái)訪問(wèn)數(shù)據(jù)庫(kù)。

mysql -u user -h database_server_ip -p

如果能夠訪問(wèn)數(shù)據(jù)庫(kù),則表明配置文件中的bind-address指令存在問(wèn)題。

但請(qǐng)注意,該設(shè)置bind-address是0.0.0.0不安全的,因?yàn)樗试S從任何 IP 地址連接到服務(wù)器。

另一方面,如果仍然無(wú)法遠(yuǎn)程訪問(wèn)數(shù)據(jù)庫(kù),則可能是其他原因?qū)е铝嗽搯?wèn)題。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • mysql 將字段time按天/月/年分組

    mysql 將字段time按天/月/年分組

    表中有一個(gè)字段time,格式為Unix時(shí)間戳,現(xiàn)需要按照該字段統(tǒng)計(jì)每天的記錄數(shù)并按天/月/年分組
    2014-07-07
  • MySQL啟動(dòng)1053錯(cuò)誤解決方法

    MySQL啟動(dòng)1053錯(cuò)誤解決方法

    創(chuàng)建mysql服務(wù)時(shí),系統(tǒng)已提示創(chuàng)建服務(wù)成功,但是net start命令提示啟動(dòng)失敗,并在services.msc中提示1053錯(cuò)誤
    2012-11-11
  • 一文帶你了解MySQL字符集和比較規(guī)則

    一文帶你了解MySQL字符集和比較規(guī)則

    前段時(shí)間往MySQL中存入emoji表情或生僻字、繁體字時(shí),報(bào)錯(cuò)無(wú)法添加,研究后發(fā)現(xiàn)這是字符集編碼的問(wèn)題,下面這篇文章主要給大家介紹了關(guān)于MySQL字符集和比較規(guī)則的相關(guān)資料,需要的朋友可以參考下
    2022-12-12
  • windows下忘記MySQL密碼的修改方法

    windows下忘記MySQL密碼的修改方法

    這篇文章主要介紹了windows下忘記MySQL密碼的修改方法,需要的朋友可以參考下
    2014-03-03
  • mysql 5.7.23 解壓版安裝教程圖文詳解

    mysql 5.7.23 解壓版安裝教程圖文詳解

    這篇文章主要介紹了mysql 5.7.23 解壓版安裝教程圖文詳解 ,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-10-10
  • 如何提高M(jìn)ySQL Limit查詢性能的方法詳解

    如何提高M(jìn)ySQL Limit查詢性能的方法詳解

    今天小編就為大家分享一篇關(guān)于如何提高M(jìn)ySQL Limit查詢性能的方法詳解,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-03-03
  • MySQL gh-ost DDL 變更工具的實(shí)現(xiàn)

    MySQL gh-ost DDL 變更工具的實(shí)現(xiàn)

    本文主要介紹了MySQL gh-ost DDL變更工具的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2025-02-02
  • Linux下修改MySQL數(shù)據(jù)庫(kù)數(shù)據(jù)文件路徑的步驟

    Linux下修改MySQL數(shù)據(jù)庫(kù)數(shù)據(jù)文件路徑的步驟

    這篇文章主要介紹了Linux下修改MySQL數(shù)據(jù)庫(kù)數(shù)據(jù)文件路徑的步驟,本文分步驟給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-12-12
  • Mysql忘記密碼怎么重置密碼的幾種實(shí)現(xiàn)方法

    Mysql忘記密碼怎么重置密碼的幾種實(shí)現(xiàn)方法

    本文主要介紹了Mysql忘記密碼怎么重置密碼的幾種實(shí)現(xiàn)方法,每種方法都有其適用的情況,根據(jù)具體情況選擇合適的方法,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-10-10
  • mysql無(wú)法啟動(dòng)服務(wù)及其他問(wèn)題總結(jié)

    mysql無(wú)法啟動(dòng)服務(wù)及其他問(wèn)題總結(jié)

    MySQL無(wú)法啟動(dòng),可能有多種原因?qū)е?本文主要介紹了mysql無(wú)法啟動(dòng)服務(wù)及其他問(wèn)題總結(jié),具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-01-01

最新評(píng)論