iT邦幫忙

0

<問題>localhost 資料庫連接疑問?

想請教的問題是
我的php網頁是連MySQL的資料庫
若別台電腦要連到我的資料庫是可以的嗎?

//更
謝謝各位大師的建議,我會思考看看的(10/12)

基本上是這樣的,當然你可以開帳號給其他電腦連你的MYSQL,但從DBA的觀點來說不建議,原則上所有的用戶應該透過AP 連 MYSQL,透過AP 去轉介需求,所以大多數的AP都是連自己的localhost,或是 127.0.0.1,因為所有的需求都是透過AP轉介,再從AP回應,USER不需要知道MYSQL到底在哪裡,他的IP多少,他開什麼PORT,這樣會比較安全
BeEvil_Y iT邦新手 5 級 ‧ 2021-10-08 19:19:06 檢舉
為什麼要這麼麻煩?
寫個PHP頁面秀資料不好嗎?
或寫API啊..................

權限全開不是作死嗎?
全地球大概有1萬多探針無時不刻在跑耶。
4
海綿寶寶
iT邦大神 1 級 ‧ 2021-10-07 15:05:11

可以

簡潔不廢話,讚

2
japhenchen
iT邦大師 1 級 ‧ 2021-10-07 15:36:38

你要新增"使用者@主機ip"

CREATE USER 'xxxxxyyyyy'@'192.168.10.100' IDENTIFIED WITH mysql_native_password BY '密碼';

或全開(你覺得安全嗎?)

CREATE USER 'xxxxxyyyyy'@'%' IDENTIFIED WITH mysql_native_password BY '密碼';

還有防火牆3306

3

基本資料庫的連結,預設是localhost。也就是只有在本地機器的請求才可以請求到。
如果要給外部機器來使用。基本來說是需要先處理如下的事。可選一項處理。

1.SSH連結:基本上一般資料庫管理應用程式,大多都有SSH的連接方式。當其連結後,其實就會有點像是在用VPN的處理一樣。也就是你用localhost也可以透過SSH的方式來正常連結。
不過,程式中要處理SSH連結是很麻煩又笨的事。一般來說,如果是要用程式連結的話,基本不會選這一種方式來處理

2.新開一個外部帳號連結:再新開一個帳號,並指定允許進來連結的IP。如

user@192.168.0.1

當然,如果是浮動IP的話。在不確定IP的情況下。可以設定為

user@%

不過一般並不建議這樣做。畢竟這對安全性來說並不是很好。

再來要注意的是防火牆的規則問題。一般人有時就算開了,還是連不到。
這時就得要考量防火牆,是不是沒開對應的PORT出來。
還有要注意的是內網及外網問題。
不過一般如果是使用localhost做為帳號的話,理論上來說比較不會有內外網問題才對。

我要發表回答

立即登入回答