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