程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> Configure Amazon RDS mysql to store Chinese Characters,amazonrds

Configure Amazon RDS mysql to store Chinese Characters,amazonrds

編輯:MySQL綜合教程

Configure Amazon RDS mysql to store Chinese Characters,amazonrds


 

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

 

up vote5down votefavorite 1

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 |
+----------------------+-----------------+
mysql amazon-rds shareimprove this question edited Jul 27 at 22:46 Kara 3,12373147 asked Jun 6 '13 at 3:24 Yujun Wu 1,19752442   add a comment

3 Answers

activeoldestvotes up vote9down 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!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved