求my sql数据库编码转换工具~
发布网友
发布时间:2022-04-24 18:26
我来回答
共2个回答
热心网友
时间:2023-11-01 02:00
现代应用程序很多都支持多语言,所以如果数据库采用mysql的话,一般都建议使用utf8编码,这样就可以存储多语言数据。另外一个原因是目前大多数的开发语言如.NET、JAVA,程序内部本身就是使用unicode处理程序,mysql使用utf8后可以避免数据库与程序之间的编码转换。
1.服务器编码设置。
mysql server 5在windows下安装时可以选择数据库的编码,但在linux下却不行,默认编码是litan1,所以需要修改配置文件,windows下配置文件是安装目录下的my.ini,linux下配置文件是/etc/my.cnf,在[client]、[mysqld]分别加上default-character-set=utf8,重启服务(linux下命令为service mysql restart)后在mysql>下输入show,结果中character_set_xxxx所有都显示为utf8就表示配置成功。
2.应用程序的配置。
java:jdbc:mysql://192.168.1.231:3306/dbname?useUnicode=true&characterEncoding=utf-8
net:Server=127.0.0.1;Database=dbname;User Id=root;Password=123456;Charset=utf8
把ip、dbname改为系统指定的。
3.已有数据库编码转换。
如果之前有些数据库是使用litan1编码,那么你需要将其转换为utf8后才能更好地使用。
a. mysqlmp --default-character-set=latin1 -uroot -p123456 dbname > 1.sql
b. 用editplus之类编辑工具打开1.sql,将latin1转换为utf8。(在测试中使用ultraedit转换后无法导入,不知道原因)。
c. mysql -u root -p 123456 dbname < 1.sql
将转换后的sql文件导入到新的数据库中。
....................................................................................
我在工作 我在快乐
每一个逝去的日子都代表着一份努力
热心网友
时间:2023-11-01 02:00
输命令不行么???