1. 程式人生 > >【linux】mysql客戶端emma中文亂碼問題解決

【linux】mysql客戶端emma中文亂碼問題解決

參考

詳情

emma預設用apt-get 安裝的話,emma是不支援中文的,配置檔案或直接修改emma程式原始檔(python)。
也可以通過ubuntu的軟體市場安裝

apt-get安裝emma
sudo apt-get install emma

修改emmarc檔案

如果你已經安裝完畢並且執行過emma,程式就會建立 ~/.emma/emmarc檔案,儲存配置。所以可以更改這裡的配置檔案,或者像下面直接修改emma的python原始檔。

vim ~/.emma/emmarc
找到
db_encoding=latin1
改為
db_encoding=utf8

修改vim init.py檔案

重新執行emma,此時發現還是亂碼,在執行所有的sql語句之前加入這條sql語句,

set names utf8
按ctrl+enter執行之後,ok!

但每次新使用者都要改配置檔案,以及執行新sql前都加這個語句,豈不是很費力,直接修改emma的原始檔,來實現,新建立的emmrc配置檔案就是utf8,和當選擇資料庫時,自動的執行set names utf8語句。

ubuntu的apt-get 安裝emma是在/usr/share/emma目錄下面。
cd /usr/share/emma/emmalib
sudo vim __init__.py
找到
"db_encoding": "latin1"


改為
"db_encoding": "utf8"

儲存退出。以後新建立的配置檔案預設就會是utf8的解碼了

修改mysql_host.py檔案

我想在連線資料之後就執行set names utf8語句,所以
sudo vim /usr/share/emma/emmalib/mysql_host.py
跳到155行左右的_use_db(self, name, do_query=True)函式哪裡,改成如下

    def _use_db(self, name, do_query=True):
        if self.current_db and name == self.current_db.name: return
if do_query: self.query("use `%s`" % name, False) self.query("set names utf8", False) try: self.current_db = self.databases[name] except KeyError: print "Warning: used an unknown database %r! please refresh host!\n%s" % (name, "".join(traceback.format_stack()))

即新增self.query("set names utf8", False)

至此,重啟emma後,中文已經能夠正常展示

相關推薦

linuxmysql客戶emma中文亂碼問題解決

參考 詳情 emma預設用apt-get 安裝的話,emma是不支援中文的,配置檔案或直接修改emma程式原始檔(python)。 也可以通過ubuntu的軟體市場安裝 apt-get安裝emma sudo apt-get install e

ubuntu mysql 客戶 emma 中文亂碼問題解決

emma預設用apt-get 安裝的話,emma是不支援中文的,配置檔案或直接修改emma程式原始檔(python)。apt-get安裝emma[list=1]sudo apt-get install emma [/list]如果你已經安裝完畢並且執行過emma,程式就會建

LINUXmysql客戶不能輸入中文

自己 很多 輸入中文 sql linu 如果 lan 自帶 linux 今天遇到了這個問題,在LINUX下輸入中文,沒有問題,但在MYSQL客戶端上無法輸入中文,很奇怪? 找了很多資料終於解決了這個問題,其實這個和字符集無關。通常出現在自己編譯的mysql版本上,如果是

Ubuntu 11.10 MySQL客戶 Emma 6.0 中文亂碼解決辦法

在Linux如果使用mysql的圖形客戶端,我感覺Emma算一個好用的了。 比起mysql自己的Mysql Query Browser 要好, 而且最不能忍受的是Mysql Query Browser 在Ubuntu 11.10 會有程式崩潰現象。 相比而言emma是挺好,

ubuntu 11.10 mysql 客戶 Emma 6.0 中文亂碼解決辦法

在linux如果使用mysql的圖形客戶端,我感覺emma算一個好用的了。 比起mysql自己的Mysql Query Browser 要好, 而且最不能忍受的是Mysql Query Browser 在ubuntu 11.10 會有程式崩潰現象。 相比而言emma是挺好,

轉載java 客戶鏈接不上redis解決方案 (jedis)

主機 rom number table 出現 gin 現在 start http 本文出自:http://blog.csdn.net/lulidaitian/article/details/51946169 出現問題描述: 1.Could not get a resou

vbs查詢客戶上的應用程序

spa uninstall fault play windows const war str jre 方法一: strHost?=?"."Const?HKLM?=?&H80000002Set?objReg?=?GetObject("winmgmts://"?&

原創MQTT客戶搭建-最清晰的MQTT協議架構

關於MQTT客戶端或者伺服器,在MQTT的github主頁上應該有不少的軟體和工具,很多時候我們的目的是用MQTT協議去開發自己的專案,而現成的軟體或者工具,主要是提供我們在開發前期的調研、開發過程的測試,都是必不可少的學習借鑑用的,所以,欲善其事,先利其器吧! MQT

說說zookeeper_zkClient客戶

本文說說zookeeper最常用的兩個客戶端:zkClient和Curator。 zkClient zkClient是github上一個開源的zookeeper客戶端,在zookeeper原

redis知識盤點_客戶Jedis

系列文章:本篇文章主要介紹一下redis的客戶端Jedis。首先明確兩點:一、redis客戶端與服務端之間的通訊協議是在TCP協議之上構建的;二、Redis制定了RESP(REdis Serializa

分散式Zookeeper客戶基本的使用

  與mysql、redis等軟體一樣,zookeeper的軟體包中也提供了客戶端程式用於對伺服器上的資料進行操作。本節我們就來學習zookeeper客戶端的使用方法。不過在詳細講解zk客戶端的使用方法之前,我們會先來討論zookeeper的資料儲存結構,只有理解了zookeeper的資料儲存結構,才會真正明

GitGit客戶使用

Git的Gui不怎麼好用,建議使用Git Bash命令。 Git的結構如下: 本地工作區 - 本地暫存區 - 本地倉庫 - 遠端倉庫 倉庫中有分支,每個分支記錄了不同的commit資訊,取決於使用者commit到哪個分支。一般來講,不是大型專案,一般都只使用一個master分支。 提交資料流程如下

原創mysql 正則匹配中文&…

含中文: where name regexp  '[^ -~]' 不含中文:  where name not regexp '^[^ -~]' 後來說需要查詢日文 參考資料得知: utf-8 (unicode) /u4e00-/u9fa5 (中文) /x3130-/x318f (韓文) /xac00

Linuxmysql命令列查看錶結構,欄位等資訊

mysql查看錶結構命令,如下: desc table_name; //查表的欄位資訊(不包含欄位內容) show columns from table_name; //同上 show create table table_name; //查表字段資訊和字符集資訊

GitGit客戶SourceTree的使用

git的客戶端,SourceTree當然不是唯一的選擇,有很多公司還用TortoiseGit。這篇部落格就簡單介紹一下SourceTree的使用,後續有機會再介紹TortoiseGit。首先是Sour

PHP獲取客戶(瀏覽器)資訊、獲取客戶系統資訊、獲取伺服器資訊

一、PHP獲取客戶端(瀏覽器)資訊函式/** * 獲取客戶端瀏覽器資訊 * @param null * @author https://blog.jjonline.cn/phptech/168.html * @return string */

NASNFS客戶掛載目錄後無寫入許可權的解決方案

在客戶機通過mount -o rw -t nfs 192.168.192.204:/mnt/cephfs /mnt/nfs命令將網路檔案mount到本地。執行完成之後,目錄是可以訪問了,但無法寫入。分析

資料庫oracle客戶PL/SQL

引言 不知為什麼,使用navicat客戶端(有一個版本既可以連線mysql,又可以連結oracle)連線oracle的時候總是崩掉(難道是因為我筆記本比較渣的原因),而且好像同事使用PL/SQL也比較多,決定使用PL/SQL試試(雖然覺得PL/SQL介面不怎麼

linux 安裝mysql客戶

安裝mysql客戶端 yum install mysql -y 連線目標主機mysql mysql -h192.168

元旦三天假期,實現一個電商退單管理系統-手機客戶實現

需求變更  拆包出現異常,需要留下照片憑證,以防後期抵賴。這當然屬於手機端功能,於是強烈向電商老闆推薦手機客戶端。 另外近期出現了一個奇怪的bug,經常掃碼時重複出現同一個編碼,明明已經掃了別的碼了,系統裡接收一的還是前一個。非常難復現,初步懷疑是掃碼槍的快取功能造成的,但沒有辦法根治,造成倉庫抱怨