上两天发的一篇文章: Apache2.2.22 + PHP5.2.17 + MySQL5.5.22 快速搭建部署PHPWind开源论坛 ,当时由于目标是快速搭建 部署PHPWind开源论坛,所以有关mysql的服务,以及mysql的配置 没弄。。所以数据库存放位置,以及编码等都是默认的.....洁癖开始...
解压mysql-5.5.22-win32.zip后的目录中有5个my-xxxx.ini配置文件,
通过查看配置文件中的描述,是说针对不同内存大小的推荐配置。
本例复制了my-medium.ini 并重命名为 my.ini 然后添加了如下几行:
[client]
default-character-set=utf8 客户端编码
[mysqld]
basedir=D:/sdk/MySQL MySQL安装目录
datadir=D:/Servers/mysql/data MySQL数据库存放目录
default-character-set=utf8 服务器端编码
default-collation=utf8_general_ci 服务器端字符集
2、安装windows服务(Windows7 用户必须以管理员启动cmd):
3、启动windows服务
结果报了1067错误。。。。
到启动日志文件查看(启动日志在MySQL的data目录中,由于本例在my.ini文件中指定了datadir,所以我的日志文件为D:\Servers\mysql\data\Siuon-PC.err):
说未知的变量'default-character-set=utf8'...记得公司的mysql配置里面就是这样的啊。。。于是Google之。。。原来由于我下载的MySQL版本是5.5...
在这个版本中刚刚配置的几个变量被新的取代了
default-character-set --> character_set_server P.S:[mysqld]部分的default-character-set
default-collation --> collation-server
修改完后的截图:
重新启动,还是报1067错误。日志为:
意思是说mysql.host表不存在。 这是由于我将datadir改成自定义的了,但是之前datadir目录(即MySQL/data) 中的系统数据库没有一起拷贝到新的datadir目录。造成的。
将如下几个文件夹复制到新的my.ini配置文件中datadir指定的目录下(在本例中为D:\Servers\mysql\data目录):
启动MySQL服务OK~~~:
关于修改root密码,请参见 Apache2.2.22 + PHP5.2.17 + MySQL5.5.22 快速搭建部署PHPWind开源论坛