IT忍者神龟之Windows下MySQL解压版安装与配置
来源:互联网 发布:淘宝招募分销商 编辑:程序博客网 时间:2024/05/29 13:33
2. 设置环境变量,在系统变量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
注:
MySQL的管理员用户名为root,密码默认为空
修改root密码
MySQL配置好后,启动成功,默认密码是空,但是为了安全,设置密码(MySQL有一个默认用户名为root,密码自己设定:假如设为root)。
1)登录MySQL root用户:
打开命令行,执行:
- mysql -uroot -p
- mysql -uroot -p
2)修改root密码:
我在windows下安装了mysql,但是不用密码就能登进去,而root明明是有密码的,我用select user()命令查看当前登录用户是root。
查看数据库,只能看到自带的两个数据库(information_schema和test),mysql这个数据库都看不到。如果运行use mysql,就会出现 Access denied for user ''@'localhost' to database 'mysql', 这说明这是匿名登录的,几乎什么权限都没有。即使用mysql -u root登录也是提示这个。
网上搜了很多资料,大多数是教的怎么在linux下解决这个问题。
我综合了大多数的方法,自以为找到了解决的办法,所以特意在博客园这里写下这篇文章:
1.首先,网上的资料都提到了需要关闭mysqld这个服务来屏蔽权限检查,我查看了任务管理器,发现的确有一个叫mysqld.exe的程序在运行:
我直接关闭这个进程。
我查阅了帮助手册,”MySQL服务器也就是mysqld,是在MySQL安装中负责大部分工作的主程序。服务器随附了几个相关脚本,当你安装MySQL时它们可以执行设置操作,或者是帮助你启动和停止服务器的帮助程序。“ 我估计它相当于mysql的守护进程,不停止它就无法设置启动脚本。
2.网上都提到了
mysqld-nt --skip-grant-tables
mysqld_safe --skip-grant-tables
safe_mysqld --skip-grant-tables 等关闭权限检查的方法,但是我在CMD命令提示符下输入都提示:“mysqld_safe”不是内部或外部命令,也不是可运行的程序或批处理文件。
于是我查看mysql安装目录下的bin文件夹里有哪些相关的文件:
(1)mysqld.exe (2)mysqld_multi.pl
我查看了帮助手册,“在Unix和NetWare中推荐使用mysqld_safe来启动mysqld服务器。mysqld_safe增加了一些安全特性,例如当出现错误时重启服务器并向错误日志文件写入运行时间信息。为了保持同旧版本MySQL的向后兼容性,MySQL二进制分发版仍然包括safe_mysqld作为mysqld_safe的符号链接。默认情况下,mysqld_safe尝试启动可执行mysqld-max(如果存在),否则启动mysqld。”
我估计mysqld_safe是mysqld.exe文件里的一个启动选项。所以我尝试了这样输入:
先跳转到mysql的bin目录下,再输入mysqld --skip-grant-tables。这时候有可能一直没有反应的样子,不会生成新的一行输入。
实际上它已经停止了权限检查,我们可以进行其他操作了。
3.重新打开一个cmd命令提示符窗口,进入到mysql里面,然后输入use mysql,就会发现成功了!:
看到没?上面最后一行提示的是Database changed!!
如果你输入show tables就会看到这个数据库下有个表叫user,记录了登陆的账户名和密码。
所以你可以这样修改root账户的密码:
UPDATE user SET Password=PASSWORD('123') WHERE user='root';
貌似还要加上一句:mysql>flush privileges;重新加载权限表。
这时你使用MySql Command Line Client登陆的话,就会要求输入密码123了!你已经不是匿名登陆,所以可以进行各种操作了!!!
- IT忍者神龟之Windows下MySQL解压版安装与配置
- IT忍者神龟之Windows安装MySQL解压版本
- Windows下MySQL解压版安装与配置
- windows下解压安装的mysql配置
- windows下安装并配置mysql解压版
- IT忍者神龟之windows下ftp命令大全
- windows下解压版MYSQL的配置
- IT忍者神龟之mysql与oracle的对比
- Windows下安装MySQL解压版
- Windows下安装MySQL解压版
- Windows下安装MySQL解压版
- Windows下安装MySQL解压版
- Windows下安装MySQL解压版
- Windows下安装MySQL解压版
- windows下安装Mysql解压版
- 解压版mysql安装与配置
- 《学习笔记》之Windows下MYSQL安装与配置
- IT忍者神龟之MySQL数据库简单操作
- Log4 日志级别
- 【学习笔记----数据结构12-树、森林与二叉树的转换】
- 未能导入activex控件,请确保它正确注册
- win7 64位无法安装网络打印机驱动
- viewWithTag子视图不正确
- IT忍者神龟之Windows下MySQL解压版安装与配置
- 第十一周 项目一(2)调用函数printchs输出星号
- live555搭建流媒体服务器1--live555概述
- 第十一周项目一:函数版型号图(1)
- iOS坐标操作
- 第11周 项目1 函数版星号图(1)(4)
- Go语言知识积累——特点简介与windows开发环境搭建
- windows下配置git
- STM32之I2C_FLAG_BUSY置位解决办法