Configure Amazon RDS mysql to store Chinese Characters

 

Configure Amazon RDS mysql to store Chinese Characters

https://dev.mysql.com/doc/refman/5.7/en/charset-applications.html

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-charactersetname

http://stackoverflow.com/questions/16953232/configure-amazon-rds-mysql-to-store-chinese-characters

 

How to configure the Amazon RDS to store Chinese Characters in the right way? Currently the text all becomes '????'.

I already created new parameter group and set character set as utf8 and modify the instance. Below are the detail info:

mysql> show variables like '%char%'; +--------------------------+-------------------------------------------+ | Variable_name | Value | +--------------------------+-------------------------------------------+ | character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | utf8 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | utf8 | | character_set_system | utf8 | | character_sets_dir | /rdsdbbin/mysql-5.5.27.R1/share/charsets/ | +--------------------------+-------------------------------------------+ +----------------------+-----------------+ | Variable_name | Value | +----------------------+-----------------+ | collation_connection | utf8_general_ci | | collation_database | utf8_general_ci | | collation_server | utf8_unicode_ci | +----------------------+-----------------+
share improve this question
 

3 Answers

up vote 9down voteaccepted

After following @Peter Venderberghe's answer to configure RDS, I still can not let it store Chinese characters correctly.

Finally, I used mysql command line to connect to RDS (you can use mysql workbench or other client tool you like)

mysql -u USERNAME -pPASSWORD -h HOSTNAMEORIP DATABASENAME

note:

1). remember to add your current ip to security group inbound of RDS before connecting to RDS

2). you can get related information(security groups, USERNAME...etc) on RDS console besides PASSWORDPASSWORD should be the one you created for the instance. HOSTNAMEORIP is "Endpoint"(without the port) on the console.

3). there is no space between -p and PASSWORD. it's exactly -pPASSWORD.

After connecting to mysql with the tool you are comfortable with, you need to give it some commands:

# set character set and collation for database mysql> alter database DATABASENAME CHARACTER SET utf8 COLLATE utf8_unicode_ci; -------- # set character set and collation for new records in a table mysql> ALTER TABLE TABLENAME CHARACTER SET utf8 COLLATE utf8_unicode_ci; # set character set and collation for existing records in a table mysql> ALTER TABLE TABLENAME CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;

you may want to write a script to do this task if you have many tables. However, it's not in the scope of this answer.

After configuring as above, you should be able to rock with Chinese characters!

转载于:https://www.cnblogs.com/kungfupanda/p/5911486.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值