参考文献:

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. SSH 整合 (Maven)

    1.SSH 教程详见我的上一篇博客 SSH(Struts 2.3.31 + Spring 4.1.6 + Hibernate 5.0.12 + Ajax)框架整合实现简单的增删改查(包含分页,Ajax ...

  2. Firebird shadow

    火鸟数据库的shadow,即实时镜像. 主库发生变化,shadow也跟随变化,防止任何意外造成主库损坏无法使用,当然shadow可以有多个. 1.创建shadow的准备:修改Firebird.conf ...

  3. 设计模式学习--装饰者模式(Decorator Pattern)

    概念: 装饰者模式(Decorator Pattern): 动态地将功能添加到对象,相比生成子类更灵活,更富有弹性. 解决方案: 装饰者模式的重点是对象的类型,装饰者对象必须有着相同的接口,也也就是有 ...

  4. .net core iis 502.5

    <Project Sdk="Microsoft.NET.Sdk.Web"> <PropertyGroup> <TargetFramework>n ...

  5. Sourcetree报错: 您没有已经配置扩展集成设置的远端

    一.错误提示 您没有已经配置扩展集成设置的远端; ... 二.解决 配置 Legacy Account Settings 即可:

  6. Form表单中Post与Get方法的区别

    Form提供了两种数据传输的方式:get和post.虽然它们都是数据的提交方式,但是在实际传输时确有很大的不同,并且可能会对数据产生严重的影响. Form中的get和post方法,在数据传输过程中分别 ...

  7. js小练习-移除数组中的元素

    移除数组 arr 中的所有值与 item 相等的元素,直接在给定的 arr 数组上进行操作,并将结果返回 代码: <!DOCTYPE HTML><html>    <he ...

  8. python中作用域

    Python 中,一个变量的作用域总是由在代码中被赋值的地方所决定的. 函数定义了本地作用域,而模块定义的是全局作用域.如果想要在函数内定义全局作用域,需要加上global修饰符. 变量名解析:LEG ...

  9. BZOJ1597: [Usaco2008 Mar]土地购买(dp 斜率优化)

    题意 题目链接 Sol 重新看了一遍斜率优化,感觉又有了一些新的认识. 首先把土地按照\((w, h)\)排序,用单调栈处理出每个位置第向左第一个比他大的位置,显然这中间的元素是没用的 设\(f[i] ...

  10. react组件直接在document上添加事件

    demo:比如组件里有个div写的框框,点击document body的背景色变红,点击div写的框框没效果 componentDidMount(){ document.onclick = this. ...