今天在虛擬機裡搭建項目環境,偷了下懶,直接把本機數據庫中的表用sqlyog復制給虛擬機中的數據庫,然後開始部署項目,項目一啟動提示:
Table 'sdmqrt.QRTZ_LOCKS' doesn't exist
我一看,找不到表,奇怪啊,我本機的數據庫不可能少表啊,檢查一遍虛擬機中的表也的確存在..這問題巧就巧在是qrtz_locks表,也就是調度任務表,spring quartz恰巧有那麼一個bug,然後我整個人就掉進那個bug裡面去了,不清楚這個bug的可以直接百度.
按照那個bug的處理方法怎麼弄也不行,而且我也在懷疑,本機是好使的怎麼可能虛擬機中就出現bug..各種折騰無解後,無奈就直接找到數據庫建庫腳本執行一遍,然後突然發現個問題,數據庫中出現大寫表名和小寫表名,我瞬間想到個可能,重新執行一遍程序果然正常了..
然後百度了一下證實了我的猜想:linux下mysql默認是區別表名大小寫的,這個和windows下不一樣,這個默認處理方式很詭異..至於改成不區分大小寫這個百度一下有的是就不列舉了.