劇情還原
今天原計划給領導演示一個小Demo, 昨天在自己機器上調通OK以后就下班了。。。
今天上午早會后,領導說 “昨天,我讓我們IT同事把新的測試環境搭建好了,XXX 你把要演示的Demo部署到上面,弄好了以后安排個會議室,我們看看。。。”。
之后,我就趕緊找IT同事確認新環境的信息,由於他有事情要請假,所以簡單給我說了下就閃人了;遂留下我一人開啟了爬坑之旅。。。
爬坑開始
從自己機器登錄到新環境以后,看了下環境,該裝的東西貌似一個都不少。。。心中暗自喜(IT同事真給力);於是把demo程序打包部署到Tomcat上面,完美啟動!!
打開瀏覽器,輸入URL,一個偌大的404搞得我差點沒把含在嘴里的版口水噴射出來。。。納尼?趕緊打開Tomcat的log看看,
Cause: java.sql.SQLException: Unknown initial character set index '45' received from server...
什么東東?趕緊在網上搜搜|壓壓驚,真慶幸網絡真的是好,輸入關鍵字以后出來了各種各樣的解決方案。沒辦法,一個個來嘗試吧。這時候領導來了,說XX,我上午有點事情,你的Demo放到下午演示吧。。。我連忙說“沒問題,,領導您先忙吧。。呵呵” 真是不幸中的萬幸呀,天助我也(心里暗暗慶幸躲過一劫)。
接着爬
趕緊回過神來解決問題呀,這東西要是搞不好,不是准備找批么!! 隨着時間一點一滴的推移,網上的解決方案試了一個又一個,都沒有什么作用。轉眼間就到了午飯的時間,可是我還是一籌莫展。。。煎熬呀!!中午午飯的時候也是食之無味,隨便巴拉兩口就趕緊回來接着解決問題。最奇怪的是在自己的環境部署測試都沒有問題,但是放到新環境里面就報錯。。。仔細想了想,首先排除程序問題;那么會不會環境的差異呢?
結束爬坑
於是打開POM查看了下 mysql-connector 的版本,自己用的是
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.38</version> </dependency>
貌似還好呀,沒有走非主流路呢,為什么會出錯呢。。。 難道是MySQL server 的問題么?打開工具查了下版本,差點沒人讓我噴飯(貌似中午也沒咋吃)。。
> SELECT VERSION(); 6.0.11-alpha-community
秋都嗎得,這是個啥版本? alpha 有沒有亮瞎我的眼~~ ITx小帥鍋,我倆也沒仇呀?! 自己在網上簡單搜了下,現在都找不到下載了地址,真的是無語呀。。。
沒辦法,總不能重新裝MySQL server 吧,那就嘗試用老一點的 mysql-connector吧, 在Maven倉庫里找了個使用率最高的 5.1.6,從新打包部署,問題解決。。
---
PS. 今天下午由於領導事情沒弄完,演示的事情暫時擱淺了,算是虛驚一場吧。 記在這里也算是給平淡的生活添一點樂趣吧 :)