IT忍者神龟之Windows下MySQL解压版安装与配置,忍者神龟mysql
1. 到官网下载MySQL解压版,然后将mysql解压到任意路径,本例放在:D:\Program Files\mysql-advanced-5.6.14-win322. 设置环境变量,在系统变量Path中添加:;D:\Program Files\mysql-advanced-5.6.14-win32\bin
3. 在根目录下面有以"my-"开头的ini文件,随意复制一个放在根目录,如:my-default.ini,将文件名修改为my.ini,添加以下内容:
[mysqld]
#设置字符集为utf8
default-character-set = utf8
basedir = D:/Program Files/mysql-advanced-5.6.14-win32
datadir = D:/Program Files/mysql-advanced-5.6.14-win32/data
[client]
#设置客户端字符集
loose-default-character-set = utf8
[WinMySQLadmin]
Server = D:/Program Files/mysql-advanced-5.6.14-win32/bin/mysqld.exe
4. 打开命令提示符,进入D:/Program Files/mysql-advanced-5.6.14-win32/bin目录,执行命令:mysqld -install将mysql安装到windows的服务。执行成功后会提示:Service successfully installed.
如果想要卸载服务执行命令:mysqld -remove。
5. 然后在命令提示符下执行:net start mysql就能启动mysql了,停止服务输入命令:net stop mysql。如果想设置mysql是否自动启动,可以在开始菜单->运行中输入service.msc打开服务管理进行设置。
6. 第一次登录的时候输入:
C:\Users\Administrator>mysql -u root
修改密码:
mysql> update mysql.user set password=PASSWORD('root') where User='root'
mysql> flush privileges
7. 若启动mysql的时候报错:系统出错 发生系统错误 1067 进程意外终止
打开D:/Program Files/mysql-advanced-5.6.14-win32/data目录下的用户名.err文件,mysql的错误日志就记录在这个文件中。在里面发现这样一句话:
110327 0:12:02 [ERROR] MySQL: unknown variable 'default-character-set=utf8'
感觉很奇怪,以前一直都这样安装的。最后在mysql的官网上找到一篇中国DBA的求助信息,原来这是新版本的一个bug,不支持在my.ini中直接设置字符集为utf8。解决办法是:在default-character-set=utf8前面加上loose-即:
[mysqld] #设置字符集为utf8
loose-default-character-set = utf8
basedir = D:/Program Files/mysql-advanced-5.6.14-win32
datadir = D:/Program Files/mysql-advanced-5.6.14-win32/data
[client]
#设置客户端字符集
loose-default-character-set = utf8
[WinMySQLadmin]
Server = D:/Program Files/mysql-advanced-5.6.14-win32/bin/mysqld.exe
8. 虽然使用上面的方式加入loose-以后,mysql启动不再报错了。但是在插入数据时依然出现了乱码问题。
mysql> show variables like '%char%';
通过以上命令查看字符集编码,得到如下结果:
+--------------------------+---------------------------------------+
| Variable_name | Value |
+--------------------------+---------------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | C:\mysql-5.5.10-win32\share\charsets\ |
+--------------------------+---------------------------------------+
可以看出character_set_database ,character_set_server 的编码还是默认的latin1。修改my.ini配置文件如下:
[mysqld]
#设置字符集为utf8
loose-default-character-set = utf8
character-set-server = utf8
basedir = D:/Program Files/mysql-advanced-5.6.14-win32
datadir = D:/Program Files/mysql-advanced-5.6.14-win32/data
[client]
#设置客户端字符集
loose-default-character-set = utf8
[WinMySQLadmin]
Server = D:/Program Files/mysql-advanced-5.6.14-win32/bin/mysqld.exe
重启服务进入mysql再次查看:
+--------------------------+---------------------------------------+
| Variable_name | Value |
+--------------------------+---------------------------------------+| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | C:\mysql-5.5.10-win32\share\charsets\ |
+--------------------------+---------------------------------------+
OK
有问题查原因-错误日志和信息
1 查看系统的服务(控制面板-管理工具-服务),检查下mysql服务的属性,确保其启动脚本类似于下边
"D:\Program Files\MySQL\MySQL Server 5.5\bin\mysqld" --defaults-file="D:\Program Files\MySQL\MySQL Server 5.5\my.ini" MySQL
2 查看系统的事件查看器(控制面板-管理工具),会记录服务启动的正常或错误信息;如果mysql服务安装的有问题,不能启动,根据错误信息排查下。
3 查看你安装mysql路径下边的 data/<hostname>.err 错误日志,如果是因为配置的不能启动,信息会在这里。
你能具体说说是怎么一回事么?你的不用安装的呀?