背景:我有一个PHP在Azure上运行,带有MySQL in-app。它已经运行了几个月,突然开始收到SQL错误--“试图以它的访问权限禁止的方式访问一个套接字”,我在CMS中进行了挖掘,并比较了Azure提供的连接字符串,发现App中的Azures端口无缘无故地改变了一个新端口。迅速更新它,它现在正在工作。但问题是,我必须从一个抱怨这件事的顾客那里找到一条艰难的路。
问题:为什么会更改端口,它还会这样做吗?我如何阻止它在未来的变化,或者明确地指定我希望它将来使用的端口?
谢谢
发布于 2017-02-01 04:24:37
发布于 2019-05-11 17:49:35
下面是我解决问题的方法:我的应用程序是一个ASP核心WebAPI
string connection = Environment.GetEnvironmentVariable("MYSQLCONNSTR_localdb");
var dbhost = Regex.Match(connection, @"Data Source=(.+?);").Groups[1].Value;
var server = dbhost.Split(':')[0].ToString();
var port = dbhost.Split(':')[1].ToString();
var dbname = Regex.Match(connection, @"Database=(.+?);").Groups[1].Value;
var dbusername = Regex.Match(connection, @"User Id=(.+?);").Groups[1].Value;
var dbpassword = Regex.Match(connection, @"Password=(.+?)$").Groups[1].Value;
string connectionString2 = $@"server={server};userid={dbusername};password={dbpassword};database={dbname};port={port};pooling = false; convert zero datetime=True;";https://stackoverflow.com/questions/41949852
复制相似问题