参考文献:

http://blog.csdn.net/tornadojava/article/details/53318773

http://blog.csdn.net/u013948858/article/details/72472026

一、前提条件

下载MYSQL安装包(zip包)

官网MySQL zip文件下载地址:https://dev.mysql.com/downloads/mysql/

二、安装

1、将下载到D:\\下的 mysql-5.7.18-winx64.zip解压缩

解压缩完成后,mysql的文件目录地址是:D:\\mysql-5.7.18-winx64
 
2、配置系统环境变量

 
在电脑配置中,系统环境变量中添加,MYSQL_HOME:D:\\mysql-5.7.18-winx64
在path 后面添加 ;%MYSQL_HOME%\bin
 
3、添加MySQL安装服务所需my.ini文件

在目录 D:\\mysql-5.7.18-winx64 下创建 my.ini  文件,注意:该文件必须是UTF8编码 
将如下代码放入my.ini文件中,并保存
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3307端口
port=
# 设置mysql的安装目录
basedir=D:\mysql-5.7.-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:\mysql-5.7.-winx64\Data
# 允许最大连接数
max_connections=
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
文件中提到了 basedir和datadir:

basedir:指的是MySQL的根目录;

datadir:值得是随后数据库的数据存放目录,所以需要在MySQL根目录下创建Data文件夹(可以根据自己的实际想法来创建目录位置,但是文件中的配置需要一致)
创建的文件和文件夹,文件列表如下:

 4、开始执行安装和添加服务的步骤:
 
D:\mysql-5.7.18-winx64\bin>mysqld install mysql3307 --defaults-file="D:\mysql-5.7.18-winx64\my.ini"

成功安装后会提示:

Service successfully installed.

安装成功后服务的名称就是“mysql3307”

三、初始化数据库

mysql服务安装成功后,就需要初始化数据库了,否则是无法启动服务的。

在bin目录下执行如下命令:

D:\mysql-5.7.18-winx64\bin>mysqld.exe --defaults-file="D:\mysql-5.7.18-winx64\my.ini" --initialize --explicit_defaults_for_timestamp
default-file 即配置文件路径,必须进行指定。
 
--initialize 说明执行数据库初始化。
--explicit_defaults_for_timestamp说明Timestamp类型的字段,必须进行指定,否则就是NULL。(这个是为了避免麻烦,因为5.6以后的mysql的Timestamp类型字段进行了一些调整)
 
初始化成功后,没有任何提示。
D:\mysql-5.7.18-winx64\bin>
四、启动数据库服务
启动“mysql3307”数据库服务:
D:\mysql-5.7.18-winx64\bin>net start mysql3307

提示信息:

MySQL 服务正在启动 ...

MySQL 服务已经启动成功。

表示启动成功

(附加:)

停止3307数据库服务:

D:\mysql-5.7.-winx64\bin>net stop mysql3307

删除服务(出现问题时,可执行)

C:\Users\guest>sc delete mysql3307
可能出现的问题

 
msvcp120.dll 丢失
安装vcredist_x86.exe或者vcredist_x64.exe,根据自己的系统而定。
 
其他问题
如果执行sc delete MySQL57指令,记得清除data文件夹下所有的文件。
 
如果执行net start MySQL57指令,
出现: 
'MySQL 服务正在启动。
MySQL 服务无法启动。
服务没有报告任何错误。
'
要配置环境变量或者环境变量配置有误,或者配置文件中的等号前后有空格,应该去掉空格,或者配置文件不是utf8编码,请仔细检查。 
 
五、修改密码
 
接下来就需要登录修改密码了,登录的临时密码在data目录的的日志文件里是”.err”文件,打开搜索”password”关键字。
--19T15::.180905Z  [Note] A temporary password is generated for root@localhost: #JheTLHho2!L

临时密码就是:#JheTLHho2!L

登录mysql:(说明:由于mysql的默认端口是3306,如果使用的是此端口,无需指定端口号。若使用其他的端口,需要在登陆的时候指定端口号,使用 -P(p大写表示端口,p小写表示密码)!)

D:\mysql-5.7.18-winx64\bin>mysql -u root -P  -p
Enter password:#JheTLHho2!L

登录成功后,修改root的密码了(最后分号不能少,表示一个指令的结束):

set password for root@localhost=password("你的密码");

修改成功后会有如下提示:

Query OK,  rows affected,  warning (0.15 sec)

恭喜完成MySQL zip版本的安装任务,可按照上述步骤,安装其他多个mysql实例。

MySql5.7.* 多实例安装部署的更多相关文章

  1. Linux平台Oracle 12.1.0.2 单实例安装部署

    主题:Linux平台Oracle 12.1.0.2 单实例安装部署 环境:RHEL 6.5 + Oracle 12.1.0.2 需求:安装部署OEM 13.2需要Oracle 12.1.0.2版本作为 ...

  2. MySQL5.7多实例自动化部署脚本

    一.安装说明 ------------------------------------------------------ mysql5.7.10_onekey_install.sh自动化部署脚本支持 ...

  3. MySQL5.6多实例安装

    MySQL-5.6.36.tar.gz多实例安装 查看官方安装说明 more INSTALL-SOURCE 安装cmake及相关依赖包 yum install -y cmake gcc [root@v ...

  4. MySQL 5.7 多实例安装部署实例

    1. 背景  MySQL数据库的集中化运维,可以通过在一台服务器上,部署运行多个MySQL服务进程,通过不同的socket监听不同的服务端口来提供各自的服务.各个实例之间是相互独立的,每个实例的dat ...

  5. mysql5.7多实例安装

    [root@vhost1]# cd /opt/source[root@vhost1]#ls mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz[root@vhost1 ...

  6. Linux平台oracle 11g单实例 安装部署配置 快速参考

    1.重建主机的Oracle用户 组 统一规范 uid gid 以保证共享存储挂接或其他需求的权限规范 userdel -r oracle groupadd -g 7 oinstall groupadd ...

  7. 一分钟完成MySQL5.7安装部署

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://suifu.blog.51cto.com/9167728/1855415 Part ...

  8. mysql5.7单机多实例安装

    基于之前的mysql5.7单实例安装 修改/etc/my.cnf文件如下(这里配置4个实例,可自行修改数目) # # 多实例配置文件,可以mysqld_multi --example 查看例子 # [ ...

  9. linux下mysql多实例安装

    1.MySQL多实例介绍 1.1.什么是MySQL多实例 MySQL多实例就是在一台机器上开启多个不同的服务端口(如:3306,3307),运行多个MySQL服务进程,通过不同的socket监听不同的 ...

随机推荐

  1. ruby冒泡算法删除店铺下的重复评论

    Shop.each do |shop| if !shop.comments.blank? n = shop.comments.length for i in 0..n-1 for j in i+1.. ...

  2. Shell脚本编写2------有关变量

    shell脚本中变量定义方式十分简单,直接将值赋值给变量较好例如 :name="tuanzhang"注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样.变量命名 ...

  3. Docker 私有registry出现的证书问题

    在上一篇 最近搭建的私有registry里,参考的文章指出,在push时可能出现问题: 可能会出现无法push镜像到私有仓库的问题.这是因为我们启动的registry服务不是安全可信赖的.这是我们需要 ...

  4. C# 数据库增加新表怎么更新ef

    找到dbmx文件,打开,右键,更新模型 也可以 右键从模型中删除 重新更新过来,感觉说了句废话 哈哈

  5. Mysql开启远程服务

    开启远程服务: 登录mysql: //赋予root用户所有权限,远程登录密码是123456 grant all privileges on *.* to '; flush privileges; 设置 ...

  6. Android全屏的两种方法

    在开发中我们经常需要把我们的应用设置为全屏,这里我所知道的有俩中方法,一中是在代码中设置,另一种方法是在配置文件里改! 一.在代码中设置: [java] view plain copy package ...

  7. 我用ASP.NET缓存之SQL数据缓存依赖(SqlCacheDependency)

    [名词解释] 缓存(Cache)依赖,大白话解释就是缓存是否更新依赖于其它Object.那么SqlCacheDependency指的就是Cache的数据更新依赖于SQL Server数据库表的变化(  ...

  8. dubbo基于tcp协议的RPC框架

    什么是 RPC 框架 谁能用通俗的语言解释一下什么是 RPC 框架? - 远程过程调用协议RPC(Remote Procedure Call Protocol) 首先了解什么叫RPC,为什么要RPC, ...

  9. js 实现复制到粘贴板功能

    前言:js 或者 jquery 都可以实现的复制到粘贴板功能,有时还想要有换行等格式(同 textarea) 网站地址:我的个人vue+element ui demo网站 github地址:yuleG ...

  10. Implementation:Dijkstra

    #include <iostream> #include <cstdlib> #include <utility> #include <queue> u ...