MySQL 手动安装方法与中文解决方案

*9 ;ary 花了1天,在Debian Etch Linux上成功安装了MySQL 5.0.27 icc版本,并使用JDBC测试中文成功! 
8)yE(ZB  
x~d� ,o 中 文问题的关键是全部使用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环境下测试中文正常。 
9`iA> �@  
HI:gS  
ihwh;,Wc 1. 下载"mysql-standard-5.0.27-linux-i686-icc-glibc23.tar.gz",推荐ICC版本,据称比GCC性能提高10-20% 
lKTyi{.q  
V KYI4/' ; 2. 复制到/usr/local/,解压:tar zxvf mysql-standard-5.x....tar.gz 
9mc~K?  
!x_q=t" 3. 添加用户和组mysql: 
D+ ,G08F  
zl/o~EJM groupadd mysql 
(n /W7!<a  
ZX�C3^ezQ useradd -g mysql mysql 
h,7U~PGh  
d8Ormt 4. 创建符号连接:/usr/local # ln -s mysql-standard-5.x... mysql 
h@z;@$D@  
{&Pq;(d 5. cd mysql,当前目录改为/usr/local/mysql/ 
4At/cJp.  
eL=fd 6. 运行脚步初始化数据库:./scripts/mysql_install_db --user=mysql 
v'43}aF9  
RjzCH+%> 7. 设置权限: 
+$R3~wUTe  
]"f5Q /usr/local/mysql # chown -R root . 
B_,NJnW*wV  
~'5wuN /usr/local/mysql # chown -R mysql data 
2FPB+RD8  
,C jo]Is} /usr/local/mysql # chgrp -R mysql 
In(HTJfh�  
^TY;R2("(  
R&lviA)_ -------------------------------------------------------------------------------- 
K2X 3dbv  
]^dC|Zr2 8. 根据需要创建并修改/etc/my.cnf,参考配置: 
i -Q^  
/fR7$]ibs [mysqld] 
0w�8Z6pU7r  
*oEI: 9 # 设置默认为INNODB表,支持事务: 
,o�s0'!y  
@ nu7)~ default-storage-engine=INNODB 
vzeZU &q,  
r`0GR[%_ # 设置默认的字符集UTF-8: 
Ve!D  
E|I!j4QJ character-set-server=utf8 
+!nK+!nI?  
&dV2x_k# collation-server=utf8_general_ci 
FrUwy~dCc  
nx>z c},~  
)DG1 dq� default-character-set=utf8 
<YlFaLNDo  
]1G/vIW@" # 禁用bdb: 
o-JU}&  
vQ Cg'8Bp skip-bdb 
Qn22b?=  
F">�h2Y^ 9. 启动MySQL: 
sF/&;rr%  
Bo{D<9s /usr/local/mysql/bin # ./mysqld_safe --user=mysql & 
#$&ad7_  
trJW-LQ$! 10. 初始化root口令: 
I.-13�P~  
SY",6*@a /usr/local/mysql/bin # ./mysqladmin -u root -p password "password-of-root" 
X LfL7S  
|L ZnT][U Enter password: <输入旧口令,直接按Enter> 
*prgR  
8d%}?wCWr  
xa!cs -------------------------------------------------------------------------------- 
/d** g&=P 11. 以root登录创建数据库: 
"kVbfv,F /usr/local/mysql # ./mysql -u root -p 
@;Yy(Zq  
54Kf7 _mfq Enter password: password-of-root 
bw ^5*Y  
s>7PPIa 12. 创建一个新用户: 
F5Cp-(,  
G6'/%=S~m mysql> create user test identified by 'test-password'; 
2 /i-i{x  
/?4IfO 13. 创建一个新数据库: 
+k7O kh[_  
D38dS`p8 mysql> create database testdb default character set utf8 default collate utf8_general_ci; 
U/n:Id+O4  
01%1g-X;( 务必指定字符集和排序方式,均为UTF-8,这样才能保证创建的表也使用UTF-8。 
Y$Q67|  
))paM*D$iv  
)0v:>|C 14. 赋予test用户从localhost访问testdb的权限,并使用口令: 
O9M_T48W'  
=8d h~) mysql> grant all on testdb.* to test@localhost identified by 'test-password'; 
,)%7aCNtk  
B lE9 注意:要使用JDBC从远程连接MySQL,就必须正确设置test用户权限,MySQL的访问权限由用户名,客户端机器名和口令共同组成,上例表示仅允许test用户在本机(localhost)通过口令连接MySQL。 
( p8XxCP=  
8y3^,  
sx q$4 -------------------------------------------------------------------------------- 
oTKx4#UZ:}  
!5<uAh~ 15. 停止MySQL服务器: 
EObDD 68M  
/f6aZiMVd /usr/local/mysql/bin # ./mysqladmin -u root -p shutdown 
&UV| LNS  
BoT}7Wxw Enter password: password-of-root 
TLM`6Op  
^t0h STOPPING server from pid file /usr/local/mysql/data/debian.pid 
.se:UX<C  
$c/yqAEWd xxx mysqld ended 
11snk{zq 中文秘籍: 
Wx%cpn6 /etc/my.cnf中所有与编码相关的设置均要设定为UTF-8,参考步骤8。 
XFf]zb!A  
~`7a BGV 按以下步骤调试: 
U}+Ts|  
'&K&X6&S#? mysql> status; 
UU4{|(Hd 注意characterset相关值,必须保证全部为utf8,否则,修改/etc/my.cnf,参考步骤8。 
s~H| w QB  
VLh|hOg mysql> show variables like '%char%'; 
j0>)uk3 除了character_set_filesystem显示为binary外,其余应该全部显示为utf8,若非utf8,修改/etc/my.cnf,参考步骤8。 
N9|K!gL@  
')?0}/ mysql> show variables like '%collation%'; 
!qa_5B"`� 显示应该全部为utf8_general_ci,否则,修改/etc/my.cnf,参考步骤8。 
4:r{6jrlH  
(<I5d> mysqlshow -u root -p -i database-name 
作用:显示数据库详细信息,如果你没有看到utf8_general_ci,而是latin_swedish_ci,说明数据库编码非UTF-8,中文肯定不正常,删之,然后参考步骤13以UTF-8重新创建数据库。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值