在CentOS7上部署價籤系統,須要安裝Mysql,Redis,emqtt,jdk。html
1)Mysql,參考java
注:修改/etc/my.cnf, 在[mysqld]下添加mysql
character_set_server=utf8
重啓Mysqlredis
service mysqld restart
重啓沒有反應的話,ctrl +c取消後,能夠查看錯誤日誌 /var/log/mysqld.log(具體位置根據my.cnf中的配置),通常是因爲參數配置錯誤致使, 如:sql
2)Redis,參考數據庫
注:須要將Redis配置爲須要密碼訪問,修改redis.conf,將requirepass配置爲須要的密碼,重啓redis.oracle
爲方便其餘客戶端鏈接,註釋bindsocket
3)emqtt,參考ui
4)jdk,參考.net
在jdk的下載地址中,下載rpm文件,經過ftp上傳到虛擬機後,經過rpm的方式進行安裝。
服務的rpm基本安裝模式:
wget 獲取rpm安裝包,
rpm -ivh *.rpm
yum install <依賴包名稱>
操做服務:systemctl start|stop|restart|status *d.service 或者 service *d start|stop|restart|status
ESL系統部署完成以後,接口調用異常,查看日誌發現:
在數據庫中存在user表,一樣的應用程序,一樣的數據庫表,在其餘環境中並無這個問題,懷疑是Mysql的系統設置問題。通過搜索,果真發現Mysql會經過參數lower_case_table_names來設置數據庫表是不是大小寫敏感,登陸Mysql,經過
show variables like "%case%";
發現lower_case_table_names的值爲0,根據參考,0的意思是區分大小寫,須要將其值改成1。
找到Mysql的配置文件,經過:
mysqladmin | grep -A 1 'Default options'
打開/etc/my.cnf,發現其內容如:
# For advice on how to change settings please see # http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html [mysqld] # # Remove leading # and set to the amount of RAM for the most important data # cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%. # innodb_buffer_pool_size = 128M # # Remove leading # to turn on a very important data integrity option: logging # changes to the binary log between backups. # log_bin # # Remove leading # to set options mainly useful for reporting servers. # The server defaults are faster for transactions and fast SELECTs. # Adjust sizes as needed, experiment to find the optimal values. # join_buffer_size = 128M # sort_buffer_size = 2M # read_rnd_buffer_size = 2M datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 # Recommended in standard MySQL setup sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES [mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid
須要將lower_case_table_names=1添加到該文件中,這裏有個巨坑!由於幾乎全部的百度搜索結果都說只要將這句話添加到該文件,或者添加到文件末尾。一開始我也是添加到末尾,可是這種狀況下無論如何重啓,這個修改始終不起效果,通過兩個小時的折騰,忽然發現my.cnf文件實際上是分結構的,經過[]分紅了兩個部分[mysqld],[mysqld_safe]!須要將參數修改添加到[mysqld]以後!!如:
[mysqld] #注意位置 lower_case_table_names=1 [mysqld_safe]
重啓Mysql:
再次登陸查詢:
參數修改爲功!