mysql全局变量 error_记录——node-mysql连接池遇到的全局变量问题
記錄一個(gè)折騰了快2個(gè)小時(shí)的BUG,目前還不清楚原理。
系統(tǒng)分別在阿里云(測(cè)試用)、XL服務(wù)器上部署,此次BUG所在功能模塊為生成表格并下載,表格數(shù)據(jù)由120(阿里云)上的數(shù)據(jù)庫(kù)提供。
阿里云上一切正常,無(wú)任何異常。
部署到112后(XL服務(wù)器),后臺(tái)提示 http 500 錯(cuò)誤,經(jīng)過(guò)排查,問(wèn)題鎖定在該功能訪問(wèn)阿里云上的數(shù)據(jù)庫(kù)時(shí)出現(xiàn)訪問(wèn)異常,在之后的捕獲中,mysql提示權(quán)限問(wèn)題。
第一次嘗試用:拷貝一份阿里云的數(shù)據(jù)庫(kù)到112服務(wù)器上,并開放所有權(quán)限,報(bào)同樣的錯(cuò)。
第二次:該功能所有代碼,包括數(shù)據(jù)庫(kù)的配置、連接,是直接在generateExcel.js文件中寫的,采用的方法是將mysql的配置代碼塊全部轉(zhuǎn)移到app.js文件中,并不用var 來(lái)聲明,直接:
pool = MYSQL.createPool({
connectionLimit: 64,
host: CONFIG.MYSQL_OPTION.HOST,
port: CONFIG.MYSQL_OPTION.PORT,
user: CONFIG.MYSQL_OPTION.USER,
password: CONFIG.MYSQL_OPTION.PASSWORD,
database: CONFIG.MYSQL_OPTION.DATABASE
});
使之成為全局變量(整個(gè)服務(wù)可見),重新運(yùn)行服務(wù),功能正常,無(wú)報(bào)錯(cuò)。
疑惑在于,同樣的代碼,阿里云上的服務(wù)就可以正常訪問(wèn),112的就不行。本地測(cè)試也是OK的。
總結(jié)
以上是生活随笔為你收集整理的mysql全局变量 error_记录——node-mysql连接池遇到的全局变量问题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 如何解决steam出现的无法访问社区 打
- 下一篇: python ctp接口_使用ctp的p