要在同一局域網(wǎng)內(nèi)連接到MySQL數(shù)據(jù)庫,請按照以下步驟操作:
確保MySQL服務(wù)正在運(yùn)行。在服務(wù)器上,您可以使用以下命令檢查MySQL服務(wù)的狀態(tài):
sudo systemctl status mysql
如果MySQL服務(wù)未運(yùn)行,請使用以下命令啟動它:
sudo systemctl start mysql
修改MySQL配置文件以允許局域網(wǎng)內(nèi)的連接。打開MySQL配置文件/etc/mysql/mysql.conf.d/mysqld.cnf
(在某些系統(tǒng)上可能是/etc/my.cnf
):
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
找到bind-address
這一行,將其值更改為0.0.0.0
,以允許來自任何IP地址的連接。如果該行被注釋掉了,請刪除注釋符號(;)。
bind-address = 0.0.0.0
保存并關(guān)閉文件。
重啟MySQL服務(wù)以應(yīng)用更改:
sudo systemctl restart mysql
在MySQL中創(chuàng)建一個具有遠(yuǎn)程訪問權(quán)限的用戶。登錄到MySQL:
mysql -u root -p
輸入您的root密碼。然后運(yùn)行以下命令,將your_username
和your_password
替換為您想要的用戶名和密碼,將your_ip_address
替換為您要允許訪問的特定IP地址或使用%
允許任何IP地址訪問:
CREATE USER 'your_username'@'your_ip_address' IDENTIFIED BY 'your_password';
例如:
CREATE USER 'myuser'@'%' IDENTIFIED BY 'mypassword';
為新用戶分配權(quán)限。將your_database
替換為您要允許訪問的數(shù)據(jù)庫名稱:
GRANT ALL PRIVILEGES ON your_database.* TO 'your_username'@'your_ip_address';
例如:
GRANT ALL PRIVILEGES ON mydb.* TO 'myuser'@'%';
刷新權(quán)限并退出MySQL:
FLUSH PRIVILEGES;
EXIT;
現(xiàn)在,您應(yīng)該能夠從局域網(wǎng)內(nèi)的其他設(shè)備連接到MySQL數(shù)據(jù)庫。使用以下命令,將your_server_ip
替換為運(yùn)行MySQL服務(wù)器的設(shè)備的IP地址,將your_username
和your_password
替換為之前創(chuàng)建的用戶名和密碼:
mysql -h your_server_ip -u your_username -p
輸入您的密碼,然后您應(yīng)該能夠成功連接到MySQL數(shù)據(jù)庫。