当前位置:Gxlcms > mysql > MySQL手动安装方法与中文解决方案_MySQL

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

时间:2021-07-01 10:21:17 帮助过:28人阅读

解决方案mysql安装

花了1天,在Debian Etch Linux上成功安装了MySQL 5.0.27 icc版本,并使用JDBC测试中文成功! *PC/s>
2-r+ W1
中文问题的关键是全部使用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环境下测试中文正常。 s _`9Kz
9:pdF6d~
8hZ D/
1. 下载"mysql-standard-5.0.27-linux-i686-icc-glibc23.tar.gz",推荐ICC版本,据称比GCC性能提高10-20% /@7d5(`0g_
P$>b!2vU
2. 复制到/usr/local/,解压:tar zxvf mysql-standard-5.x....tar.gz $MCnN}3D
8jS;av
3. 添加用户和组mysql: JC!A; RX=
T "r<?+
groupadd mysql > Js]*O-b5
@QbgV+a
useradd -g mysql mysql +,)9^YC
*v/B&"'B
4. 创建符号连接:/usr/local # ln -s mysql-standard-5.x... mysql LQdx1w+Q
A LYGx6
5. cd mysql,当前目录改为/usr/local/mysql/ ;Uf)HL
H*9w Fe2
6. 运行脚步初始化数据库:./scripts/mysql_install_db --user=mysql j9T;#n}g
~X[r$83IlC
7. 设置权限: 6 6-7
NFS$417Z7
/usr/local/mysql # chown -R root . W3tI{7Z
UIG, AO~x
/usr/local/mysql # chown -R mysql data \cxHVX
1g a2n(X
/usr/local/mysql # chgrp -R mysql JZH9tBS_W
aY[jZuX`p
6=(dW>
-------------------------------------------------------------------------------- KvW>U 2
i5M_Zp
8. 根据需要创建并修改/etc/my.cnf,参考配置: AtZ< b_?
$FA\ jFY;
[mysqld] V`2Pp`
'le!b5iVr
# 设置默认为INNODB表,支持事务: 3D30=,
bVM)1Is -
default-storage-engine=INNODB 7@jm=wm
7G(Aq !
# 设置默认的字符集UTF-8: W})%D'3&Y
%Ke;Hxs:~
character-set-server=utf8 Q^j6R |
H>Cf0p>8(,
collation-server=utf8_general_ci ]:0iB#~
EI4=J.N A
BftmtlF+
default-character-set=utf8 ve{9>]
iSipZ[};@]
# 禁用bdb: mk I@
sCFz
skip-bdb D6g/ua5\
>gA- Ghf
9. 启动MySQL: sY?a>8,)kT
=JO~
/usr/local/mysql/bin # ./mysqld_safe --user=mysql & vY"q*
d]D+ bB
10. 初始化root口令: BY3 pfow@
/prHxDOoZ
/usr/local/mysql/bin # ./mysqladmin -u root -p password "password-of-root" xcOX80
"qKSZ
Enter password: <输入旧口令,直接按Enter> ?,s,r P7N
?$51P}|
<{5A Izu@
-------------------------------------------------------------------------------- J*h%o`'{r
11. 以root登录创建数据库: 1P0h\rO
/usr/local/mysql # ./mysql -u root -p ^Ia?b2@
8[7A!tytK7
Enter password: password-of-root odAU<su
zAFZv]Tj
12. 创建一个新用户: [2 qTm5
RAr 33!U
mysql> create user test identified by 'test-password'; _ow{`B:
G?5,0D
13. 创建一个新数据库: \fuk%\aS
Je~0~Z
mysql> create database testdb default character set utf8 default collate utf8_general_ci; 4|x1l
.Z*6c 4Z
务必指定字符集和排序方式,均为UTF-8,这样才能保证创建的表也使用UTF-8。 M0<3wB
6.Ahaq
I'9u}t
14. 赋予test用户从localhost访问testdb的权限,并使用口令: w:uZ"{J`
-E<43S>p
mysql> grant all on testdb.* to test@localhost identified by 'test-password'; ?A6!#os1
fTL^w -
注意:要使用JDBC从远程连接MySQL,就必须正确设置test用户权限,MySQL的访问权限由用户名,客户端机器名和口令共同组成,上例表示仅允许test用户在本机(localhost)通过口令连接MySQL。 l9,ba[n|
`PF9$
\V
-------------------------------------------------------------------------------- C d5)8n
0563\*
15. 停止MySQL服务器: (9~qYk=h
-JX8#YB7O
/usr/local/mysql/bin # ./mysqladmin -u root -p shutdown bRHUc]OI
DIIMNv[5
Enter password: password-of-root _CU}gLt
X9,{-~P
STOPPING server from pid file /usr/local/mysql/data/debian.pid Y/tUz>x\
k=[!9)8t
xxx mysqld ended &]G\&D5
中文秘籍: 
/etc/my.cnf中所有与编码相关的设置均要设定为UTF-8,参考步骤8。 <JO*dF}
==?rpt
按以下步骤调试: |jTCx[AJ7
t [2)Rt
mysql> status; Zvz!jA,GL
注意characterset相关值,必须保证全部为utf8,否则,修改/etc/my.cnf,参考步骤8。 9NdoZK:)N
w's3 ,1
mysql> show variables like '%char%'; DhI_"gk"
除了character_set_filesystem显示为binary外,其余应该全部显示为utf8,若非utf8,修改/etc/my.cnf,参考步骤8。 r5H\V l\
SUxWSte
mysql> show variables like '%collation%'; TDg<=oK
显示应该全部为utf8_general_ci,否则,修改/etc/my.cnf,参考步骤8。 8D3h4gQW3D
;J[q\1}h}
mysqlshow -u root -p -i database-name SYGf@ mQ
作用:显示数据库详细信息,如果你没有看到utf8_general_ci,而是latin_swedish_ci,说明数据库编码非UTF-8,中文肯定不正常,删之,然后参考步骤13以UTF-8重新创建数据库。

人气教程排行