Azure SQL 數(shù)據(jù)庫(kù)常見(jiàn)的連接問(wèn)題,azure data studioazure數(shù)據(jù)庫(kù)常見(jiàn)連接問(wèn)題本文總結(jié)了Azure SQL數(shù)據(jù)庫(kù)連接失敗的常見(jiàn)案例,主要分為五類(lèi),旨在幫助用戶或企業(yè)數(shù)據(jù)庫(kù)管理員排查異常數(shù)據(jù)庫(kù)連接。問(wèn)題1:連接字符串問(wèn)題1.錯(cuò)誤的登錄名或密碼如果您在連接到數(shù)據(jù)庫(kù)時(shí)輸入了錯(cuò)誤的登錄名或密碼,那么通......
本文總結(jié)了Azure SQL數(shù)據(jù)庫(kù)連接失敗的常見(jiàn)案例,主要分為五類(lèi),旨在幫助用戶或企業(yè)數(shù)據(jù)庫(kù)管理員排查異常數(shù)據(jù)庫(kù)連接。
問(wèn)題1:連接字符串問(wèn)題
1.錯(cuò)誤的登錄名或密碼
如果您在連接到數(shù)據(jù)庫(kù)時(shí)輸入了錯(cuò)誤的登錄名或密碼,那么通常我們會(huì)看到以下錯(cuò)誤:
此時(shí),您可以檢查SSMS客戶端輸入的連接字符串或登錄名和密碼是否正確。
2.錯(cuò)誤的服務(wù)器名稱(chēng)
當(dāng)遇到以下錯(cuò)誤消息時(shí),您需要檢查服務(wù)器名稱(chēng)是否輸入錯(cuò)誤。
問(wèn)題2:登錄/用戶權(quán)限
如果使用的登錄名無(wú)權(quán)訪問(wèn)目標(biāo)數(shù)據(jù)庫(kù),當(dāng)您嘗試直接連接到此數(shù)據(jù)庫(kù)或在連接到master數(shù)據(jù)庫(kù)后擴(kuò)展此數(shù)據(jù)庫(kù)時(shí),將會(huì)遇到以下錯(cuò)誤:
這時(shí)候你需要根據(jù)情況為這個(gè)登錄創(chuàng)建一個(gè)用戶,然后賦予這個(gè)用戶訪問(wèn)數(shù)據(jù)庫(kù)的權(quán)限;或者直接換一個(gè)有訪問(wèn)權(quán)限的賬號(hào)來(lái)連接。以下示例說(shuō)明如何創(chuàng)建名為testlogin的登錄名,并授予對(duì)數(shù)據(jù)庫(kù)testdb的讀取權(quán)限:
在master數(shù)據(jù)庫(kù)下運(yùn)行該語(yǔ)句,創(chuàng)建一個(gè)名為testlogin的登錄名。
用password=Pass word1創(chuàng)建登錄testlogin
切換到testdb數(shù)據(jù)庫(kù)并創(chuàng)建一個(gè)名為testuser的用戶。
從登錄testlogin創(chuàng)建用戶testuser
向新創(chuàng)建的testuser添加讀取權(quán)限。
EXEC sp addrolememberdb datareader,testuser
問(wèn)題3:防火墻設(shè)置
1.IP地址不在允許列表中。
如果發(fā)起連接的客戶端的IP地址不在Azure SQL數(shù)據(jù)庫(kù)的IP允許列表中,連接將失敗。此時(shí)需要登錄Azure管理門(mén)戶添加相應(yīng)的防火墻規(guī)則。
2.在客戶端和互聯(lián)網(wǎng)之間的所有防火墻上,確保端口1433的出站連接是打開(kāi)的。
3.對(duì)于部署在Azure虛擬機(jī)上的客戶端,除了端口1433,請(qǐng)確保Azure客戶端計(jì)算機(jī)上的端口范圍110001999和140004999是為客戶端和SQL數(shù)據(jù)庫(kù)之間的交互保留的。
問(wèn)題4:臨時(shí)錯(cuò)誤
當(dāng)應(yīng)用程序嘗試連接到Azure SQL數(shù)據(jù)庫(kù)時(shí),如果它收到以下錯(cuò)誤消息:
錯(cuò)誤代碼40613:數(shù)據(jù)庫(kù)lt;xgt在服務(wù)器上lt;ygt目前不可用。請(qǐng)稍后重試連接。如果問(wèn)題仍然存在,請(qǐng)聯(lián)系客戶支持,并向他們提供lt;的會(huì)話跟蹤ID。zgt
這種錯(cuò)誤通常是暫時(shí)的。當(dāng)SQL需要?jiǎng)討B(tài)調(diào)整硬件資源時(shí),或者有計(jì)劃的事件(比如軟件更新)時(shí),就會(huì)觸發(fā)重新配置,而且大部分重新配置會(huì)很快完成,最多不超過(guò)60s。對(duì)于這種臨時(shí)錯(cuò)誤,可以有以下解決方案:
1.應(yīng)用程序端應(yīng)該準(zhǔn)備好處理這個(gè)臨時(shí)錯(cuò)誤。添加重試邏輯非常重要,當(dāng)問(wèn)題出現(xiàn)時(shí)重試,而不是直接將錯(cuò)誤拋給客戶端/用戶。有關(guān)重試邏輯的示例代碼,請(qǐng)參閱:SQL Azure連接重試。
2.當(dāng)數(shù)據(jù)庫(kù)的資源使用接近上限時(shí),也可能會(huì)導(dǎo)致臨時(shí)連接問(wèn)題。在這種情況下,我們可以通過(guò)管理門(mén)戶的監(jiān)控圖及時(shí)發(fā)現(xiàn)資源的不足,并根據(jù)實(shí)際需求調(diào)整服務(wù)水平。
問(wèn)題5:啟用了數(shù)據(jù)庫(kù)表審計(jì)
Azure SQL數(shù)據(jù)庫(kù)表審計(jì)開(kāi)啟后,對(duì)于下級(jí)客戶端,需要修改連接字符串,否則無(wú)法連接。
備注
這個(gè)問(wèn)題只有在應(yīng)用表審計(jì)的時(shí)候才會(huì)出現(xiàn),目前已經(jīng)放棄表審計(jì)了。對(duì)于Blob審計(jì),不需要修改它。
對(duì)于“下級(jí)客戶端”,即支持TDS 7.3版和更低版本的客戶端,應(yīng)該修改連接字符串中的服務(wù)器FQDN:
原始服務(wù)器FQDN正在連接:lt;服務(wù)器名稱(chēng)gt。. database.chinacloudapi.cn
連接字符串中修改的服務(wù)器FQDN:lt;服務(wù)器名稱(chēng)gt。. database . secure . chinacloudapi . cn
“下級(jí)客戶”的部分列表包括:
。NET 4.0及更早版本,
ODBC 10.0及更早版本。
JDBC(JDBC雖然支持TDS 7.4,但不完全支持TDS重定向功能)
繁瑣(對(duì)于節(jié)點(diǎn)。JS)
有關(guān)更多信息,請(qǐng)參考:SQL數(shù)據(jù)庫(kù)低層客戶端支持和用于審計(jì)的IP端點(diǎn)更改。
特別聲明:以上文章內(nèi)容僅代表作者本人觀點(diǎn),不代表ESG跨境電商觀點(diǎn)或立場(chǎng)。如有關(guān)于作品內(nèi)容、版權(quán)或其它問(wèn)題請(qǐng)于作品發(fā)表后的30日內(nèi)與ESG跨境電商聯(lián)系。
二維碼加載中...
使用微信掃一掃登錄
使用賬號(hào)密碼登錄
平臺(tái)顧問(wèn)
微信掃一掃
馬上聯(lián)系在線顧問(wèn)
小程序
ESG跨境小程序
手機(jī)入駐更便捷
返回頂部