手动安装方法与中文解决方案
花了1天,在Debian Etch Linux上成功安装了MySQL 5.0.27 icc版本,并使用JDBC测试中文成功!
中文问题的关键是全部使用UTF-8编码,MySQL 5发布版支持UTF-8,但默认为latin1,Java在内部使用的全部是Unicode,因此要保证JSP页面以UTF-8编码,JDBC驱动采用官方Connector4J 5.0.4,在Resin 3.1/Spring 2.0/Hibernate 3.2环境下测试中文正常。
1. 下载\"\",推荐ICC版本,据称比GCC性能提高%
2. 复制到/usr/local/,解压:tar zxvf mysql-standard-5.x....
3. 添加用户和组mysql:
groupadd mysql
useradd -g mysql mysql
4. 创建符号连接:/usr/local # ln -s mysql-standard-5.x... mysql
5. cd mysql,当前目录改为/usr/local/mysql/
6. 运行脚步初始化数据库:./scripts/mysql_install_db --user=mysql
7. 设置权限:
/usr/local/mysql # chown -R root .
/usr/local/mysql # chown -R mysql data
/usr/local/mysql # chgrp -R mysql
8. 根据需要创建并修改/etc/f,参考配置:
[mysqld]
# 设置默认为INNODB表,支持事务:
default-storage-engine=INNODB
# 设置默认的字符集UTF-8:
character-set-server=utf8
collation-server=utf8_general_ci
default-character-set=utf8
# 禁用bdb:
skip-bdb
9. 启动MySQL:
/usr/local/mysql/bin # ./mysqld_safe --user=mysql
10. 初始化root口令:
/usr/local/mysql/bin # ./mysqladmin -u root -p password \"password-of-root\"
Enter password: 输入旧口令,直接按Enter
11. 以root登录创建数据库:
/usr/local/mysql # ./mysql -u root -p
Enter password: password-of-root
12. 创建一个新用户:
mysql create user test identified by \'test-password\';
13. 创建一个新数据库:
mysql create database testdb default character set utf8 default collate utf8_general_ci;
务必指定字符集和排序方式,均为UTF-8,这样才能保证创建的表也使用UTF-8。
14. 赋予test用户从localhost访问testdb的权限,并使用口令:
mysql grant all on testdb.* to test@localhost identified by \'test-password\';
注意:要使用JDBC从远程连接MySQL,就必须正确设置test用户权限,MySQL的访问权限由用户名,客户端机器名和口令共同组成,上例表示仅允许test用户在本机(localhost)通过口令连接MySQL。
15. 停止MySQL服务器:
/usr/local/mysql/bin # ./mysqladmin -u root -p shutdown
Enter password: password-of-root
STOPPING server from pid file /usr/local/mysql/data/d
xxx mysqld ended
中文秘籍:
对于事故 /etc/f中所有与编码相关的设置均要设定为UTF-8,参考步骤8。
按以下步骤调试:
mysql status;
注意characterset相关值,必须保证全部为utf8,否则,修改/etc/f,参考步骤8。
mysql show variables like \'%char%\';
除了character_set_filesystem显示为binary外,其余应该全部显示为utf8,若非utf8,修改/etc/f,参考步骤8。
mysql show variables like \'%collation%\';
显示应该全部为utf8_general_ci,否则,修改/etc/f,参考步骤8。
mysqlshow -u root -p -i database-name
作用:显示数据库详细信息,如果你没有看到utf8_general_ci,而是latin_swedish_ci,说明数据库编码非UTF-8,中文肯定不正常,删之,然后参考步骤13以UTF-8重新创建数据库。
查看本文来源
孝感白癜风医院福州治疗妇科费用
脂溢性脱发怎么治疗
-
衡水市人民医院疼痛科病房里的爱恋
作者:痉挛科 是从:中的国桌面 有人真是,恋人最精采的模样,就是雷雨中...
2023-10-07
-
护肤品如何起步做抖音电商?
国际品牌如何起步好好在手音淘宝? 作准备:冷芸风尚7大群大群友 整整:2...
2023-09-20
-
2022年山西省星火项目创业总决赛吕梁市初赛开始报名啦
聚焦星火力量 共助实业梦想,由高村乡财务管理和全球化保障局协办的2022年...
2023-09-11
-
率先8个风华音乐大师工作室落户宁波大学
十一号8个风华古典作曲者游戏公司落户嘉兴大学 近日,嘉兴“古典音乐之城...
2023-09-06
-
点赞新教练!威少:我想回家
威少和马刺的前男友有了新进展。 首先是威少点拉姆了自己的新教练言论。...
2023-09-02
-
APP也能拍出电影感,vivo S15系列让你自带主角光环
前不久vivo发行的vivo S15三部引起数码圈的关注,除了不俗的外观设计与强劲的...
2023-09-01