首先明确成功的原则:
端口号不同:3306--3307
服务名称不同:注册的时候名称不同MySQL---MySQL2
1、两个mysql的安装路径不能相同
本人选择的是安装版本的mysql-5.6.20-win32.msi文件,直接点击安装;
类型中选择custom,更改安装的路径和选择数据存储在本地
上图中的两个文件,MySQL Server文件的存放路径和Server data files两个文件存放在不同的文件中,两个数据库对应的这两个安装位置不相同;
2、修改my-default.ini 文件
主要是端口和安装路径的修改
找到安装路径下的my-default.ini(修改之前请备份)
修改或者添加如下的属性
对于第一个mysql(如果是默认安装也可以不修改,直接修改第二个就可以了)
[client]
port=3306
[mysqld]
port=3306
basedir="D:\MySQLServer\my-default.ini"
datadir="D:\MySQLDataServer\data\"
对于第二个mysql
[client]
port=3307
[mysqld]
port=3307
basedir="E:\MySQLServer\my-default.ini"
datadir="E:\MySQLDataServer\data\"
为第二个mysql添加环境变量,(没有测试不添加的情况是否能够成功)
环境变量 E:\MySQLServerbin;(根据安装目录)将路径放到
右击-计算机 属性 -高级系统设置 -最下面环境变量 ,
在系统变量里面找Path ,将路径放到Path 的值的最前端,
注意不要删掉里面原来的任何一个字母,不要忘记咱mysql后面的 分号。
3、注册服务
运行 cmd
输入盘符例如:“D:” 进入到安装的mysql盘
cd MySQLServer\bin
mysqld install -MySQL2 --defaults-file='E:\MySQLServer\my-default.ini' 回车运行
会出现success 成功
{
进入注册表查看是否对应的服务ImagPath与my-default.ini路径相同(相同就不用修改了)
运行 regedit进入到注册表
HKEY_LOCAL_MACHINE-->SYSTEM-->CurrentControlSet-->Services
找到刚才创建的MySQL2,将ImagePath修改成如下":
"E:\MySQLServer\bin\mysqld" --defaults-file="E:\MySQLServer\my-default.ini" MySQL2
}
4、见证奇迹的时刻到了
{net start MySQL},Mysql 服务如果无法启动。
这时要先删除MYSQL目录下的data文件夹,
然后在终端里面输入{ mysqld --initialize }初始化一下,
然后会在目录下自动生成data文件夹,
然后net start mysql就可以启动MYSQL服务了。
.如果遇到 ERROR 2003: Can't connect to MySQL server on 'localhost'
(10061) 这个错,直接删掉my.ini文件.放心,一样能用.
5、
此时还在命令行的bin目录下
输入mysql -u root -p 第一次登陆没有密码,直接回车;如果出现如下错误
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using passwor:NO)。
输入命令 mysqld --skip-grant-tables (本人的命令行窗口卡在了这里,等了半天,手动关闭后,重新进入到该bin目录下)跳过密码
接着上输入:mysql -u root -p 回车,进入到了数据库中;
更改密码
UPDATE user SET Password=PASSWORD('newpassword')
where USER='root';就可以了;
有的版本可能报错,如下修改
查了一下user表,发现根本没有password字段,后来才知道用的是authentication_string字段。
所以,现在要执行的语句是 {update mysql.user set authentication_string=password('123456') where user='root' and Host = 'localhost';}
命令:{FLUSH PRIVILEGES;},加载权限表,让新密码生效!重启服务。再进入mysql输入正确的密码就可以了。这的密码是123456哦.