终端连接mysql,python连接mysql设置支持中文

python连接mysql:
具体操作点击这里

mysql默认的编码方式不支持中文。如何使mysql支持中文?

1、在每次创建表的时候都在最后加上

character set = utf8

就可以很好的支持中文。

create table entries2 (
       id     int auto_increment, 
       title  text,
       content  text,
       posted_on  datetime,
       primary key (id)   
) character set = utf8;

2、修改已经有的table的编码,当使用默认编码创建了一个table的时候,是不能支持中文的,这时候使用如下语句对table_name进行修改:

alter table table_name convert to character set utf8;

python在连接mysql的时候也要设置编码格式:

打开数据库连接。

db = MySQLdb.connect(“localhost”,“user”,“password”,“db_name, charset=‘utf8’” )

有的第三方库连接mysql时候报错:“Can’t initialize character set ‘utf-8’”

搜索发现有的说是utf-8换成utf8就可以了,有的说是用gbk,试了下还是报错:
File “/usr/local/lib/python2.7/dist-packages/MySQLdb/connections.py”, line 278, in literal
return self.escape(o, self.encoders)
File “/usr/local/lib/python2.7/dist-packages/MySQLdb/connections.py”, line 208, in unicode_literal
return db.literal(u.encode(unicode_literal.charset))
UnicodeEncodeError: ‘latin-1’ codec can’t encode characters in position 20-30: ordinal not in range(256)
尝试修改connection配置的url:connection = mysql://root:cyberaudit@localhost/cuckoo?charset=‘utf8’,改为:
connection = mysql://root:cyberaudit@localhost/test?charset=utf8
去掉utf8外面的单引号成功了。

终端连接mysql

连接MYSQL:
格式: mysql -h主机地址 -u用户名 -p用户密码

1、例1:连接到本机上的MYSQL

找到mysql的安装目录,一般可以直接键入命令mysql -uroot -p,回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中

了,MYSQL的提示符是:mysql>

2、连接到远程主机上的MYSQL

假设远程主机的IP为:10.0.0.1,用户名为root,密码为123。则键入以下命令:

mysql -h10.0.0.1 -uroot -p123
或者
mysql -h10.0.0.1 -uroot -p
输入密码:

(注:u与root可以不用加空格,其它也一样)

3、退出MYSQL命令

exit (回车)

你可能感兴趣的:(linux,python)