接上一篇文章http://www.cnblogs.com/wigis/archive/2012/12/01/2797505.html

在使用bat批处理可以自动部署MySQL服务端后,我们使用InstallShield来达到相同的目的。原理还是一样的,在用InstallShield安装到客户机的指定位置后,运行bat文件。

1.  准备以下文件。在上一步应该已经都完成了。

1)        首先准备好非安装版MySQL(可以删除其内mysql-test子文件夹,此文件夹用于回归测试MySQL,无用而且较大);

2)        准备好my.ini

若客户端可能存在MySQL服务器软件,要修改port为其他端口。只要保证每个MySQL服务器使用不同端口,就可以在一个机器上运行多个MySQL实例,很简单。

3)        准备好导入数据的SQL文件

4)        准备好bat文件。

解释:

rem 设置当前路径

set curDir=%cd%

rem是相当于//注释

保存当前路径其实似乎没必要。

rem 若存在服务,则删除

net stop MySQLCiBASE

bin\mysqld remove MySQLCiBASE

不管客户机有没有,首先停掉MySQL服务,并卸载。客户机没有则报错,但不影响继续执行。

echo 安装MySQL服务。。。

bin\mysqld --install MySQLCiBASE --defaults-file="%curDir%\my.ini"

安装MySQL服务,--defaults-file参数要带上双引号,否则路径中有空格(比如C:\Program Files)就会报错,dos命令遇到空格就认为命令结束。导致路径错误。

echo 启动MySQL服务。。。

net start MySQLCiBASE

echo MySQL安装完成。。。

cd %curDir%

echo 初始化MySQL用户。。。

bin\mysql -uroot <init.sql

我们加入了init.sql,此SQL文件为了导入用户。你可以在其中修改MySQL的默认帐户以及权限,使MySQL更安全。

 

echo MySQL开始导入数据。。。

bin\mysql -uroot<cibase.sql

导入自己的Sql数据

pause

为了测试我们后面加入pause。实际运行不需要,否则还要用户点击下安装才能继续。

2.  InstallShield部署软件有些思想。它把需要安装的软件分为若干Feature,每个Feature是软件中相对独立的功能,可由用户选择安装或不安装。对于我们只有一个MySQL的安装,所以只有一个Feature。那每个Feature下肯定应该包含很多文件及文件夹,而InstallShield是Component的概念。一个Component可包含多个文件,并指定独立的安装位置,当然一般是所属Feature下。InstallShield有一些规则来把文件或文件夹分割为不同的Component,比如每个文件夹至少分割成一个Component;遇到exe,dll,hlp等文件也要分割一个Component。我们不用管它,我们使用向导来建立Feature下的Component,IntallShield会自动为我们分割好。

我们部署MySQL其实只用到很简单的东西。我们新建一个Feature,指定安装路径,使用向导导入文件。然后,比较高级的技术,就是在安装完成后要运行脚本Intall.bat文件。

1)        首先建立InstallScript MSI Project。为什么建立此类型,据说此类型最好用。

2)        当然在Project Assistant选项卡中填写一些基本信息,公司名似乎必填,或直接在Intallation DesigneràInstallation Information内填写

3)        Intallation DesigneràInstallation InformationàGeneral Information的安装目录要自己填写清楚。方便查看检验。

4)        在Organization的Setup Design内设置Feature,有个DefaulatFeature我们可以删除它,也可以修改它。Organization还有Features,Components视图是他们各自的列表,读者可自行查看。下图中,我们使用向导为mysql导入文件。若不用向导,我们需要手工建立Component,并对应其mysql的父子目录关系,当文件很多时几乎不可行,多亏向导。

5)        选择第一个Best Practices

6)        选择安装目录(其实Feature的目录默认为其包含的Components的目录)

7)        选择Add Folder…。添加mysql非安装版的文件夹

8)        比较慢,它自动为mysql的文件分为很多components。

9)        重要的一步,要添加运行脚本。在Behavior and LogicàInstallScript中。

10)        在Setup.rul中添加,选择上面2个下拉框,它会自动出现代码模板,我们只需在begin和end间,敲入适当的代码即可。

LanchAppAndWait(INSTALLDIR6”Instal.bat”,””,”WAIT”);函数的意思,可在InstallShield帮助文档中查询。

11)        点击Run。就OK了。错误的地方自己测试。

12)        卸载脚本

  • 其实安装MySQL服务最好不要用MySQL名称,这个名称是MySQL的默认名称,假如客户端安装了MySQL服务的话,一般就是此名称,会冲突。假如需要在客户机部署多个MySQL实例,我们根据自己项目需求,改变Install.bat和UnInstall.bat的MySQL Windows服务名称和my.ini[mysqld]组下的port即可。
  • 关于IntallShield的知识,多读帮助文档。很多知识网上说的五花八门。还是帮助文档靠谱。我使用的是InstallShield2010 Premier Edition 英文版。
  • 我也是刚刚学习InstallShield.

使用InstallShield下部署ASP.NET网站和MySQL,目标机为Win7——(一)使用bat批处理部署非安装版MySQL

使用InstallShield下部署ASP.NET网站和MySQL,目标机为Win7——(二)使用InstallShield部署非安装版MySQL

使用InstallShield下部署ASP.NET网站和MySQL,目标机为Win7——(三)整体部署

2012-12-01

转载于:https://www.cnblogs.com/wigis/archive/2012/12/01/2797517.html

使用InstallShield下部署ASP.NET网站和MySQL,目标机为Win7——(二)使用InstallShield部署非安装版MySQL...相关推荐

  1. windows安装版mysql_windows下非安装版 mysql配置

    mysql-5.6.25-win32压缩包+navicate管理器 1.安装过mysql的msi文件,然后一不小心把mysql的系统数据库删了,重装就各种装不上(注册表项,programdata,安装 ...

  2. windows下nginx+mono+fastCGI部署asp.net网站

    1,什么是nginx 简介 Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器. Nginx ...

  3. 推荐两款支持在linux下运行ASP.NET网站的国产免费WEB服务器软件

    推荐两款支持在linux下运行ASP.NET网站的国产免费WEB服务器软件 1.kangle kangle web server是一款跨平台(windows/linux/bsd).功能强大.安全稳定. ...

  4. bat 安装mysql_免安装版Mysql一键部署bat文档的方法

    之前做mysql一键安装部署,初始化数据库.表及数据时找了好多帖子,在测试时有好多坑.处理之后测试成功.可用. 在确保有免安装版mysql文件后,在其目录下添加mysqlinstall.bat文件与e ...

  5. mysql官网下载下来的免安装版怎么配置_Windows下的免安装版MySQL配置

    近日在新的电脑上安装MySQL遇到一些小问题,在此做分享,也作为日后备用. 下载MySQL 进入MySQL官网,依次点击:上方选项卡DOWNLOADS->页面底端MySQL Community ...

  6. Apache服务器部署ASP.NET网站

    资源罗列: apache如何支持asp.net 用 Apache 发布 ASP.NET 网站

  7. IIS 部署asp.net Provisional headers are shown 在VS2005返回值,部署不返回值

    IIS 部署asp.net Provisional headers are shown 在VS2005调试返回值,部署到IIS不返回值 首先当时为了跨域的问题,在上面 后来把跨域的内容放在IIS去解决 ...

  8. win8 下免安装版mysql

    惯例: 我是温浩然: 请先看完全部文章!!!!! 先说问题,需要在本地使用mysql,下载了一个面安装版的, 双击运行,mysql.exe,一直秒退, 将其设置成,用管理员身份登录,还是不行. 从网上 ...

  9. Windows下的免安装版MySQL配置

    近日在新的电脑上安装MySQL遇到一些小问题,在此做分享,也作为日后备用. 下载MySQL 进入MySQL官网,依次点击:上方选项卡DOWNLOADS->页面底端MySQL Community ...

最新文章

  1. Node.js 开发指南笔记
  2. 词云图可视化python_python 可视化 词云图
  3. cisco tftp 操作
  4. 有个需求mybatis 插入的时候不知道有哪些字段,需要动态的传入值和字段
  5. no route to host什么意思_Day 74:Vue里的route和router
  6. 针对灰鸽子声明 金山“四问”灰鸽子工作室
  7. 红警 1 游戏开源,代码非常规范,网友:秀色可餐
  8. 用计算机探索ppt,《用计算器探索规律 2》ppt课件.ppt
  9. MFC界面设计入门篇
  10. 如何学习摸具设计?怎样学习摸具设计?学习摸具设计的方法。
  11. 怎么用计算机圣诞节快乐,【计算机·图文】圣诞节快乐—圣诞节故事
  12. 软件经验|GDAL空间数据开源库开发介绍
  13. js 中的 this、that
  14. 2019年2月星环科技大数据应用开发面试(2年工作经验)
  15. 导数、偏导数以及梯度
  16. Lync 2013十大新功能
  17. DES Wrong Key Size错误
  18. SQL Server 2005系列教学(11) 约束
  19. 三星S9/S9+将亮相,神秘邀请函透露了哪些信号?
  20. Java程序员:java游戏开发引擎

热门文章

  1. C++笔记-基于邻接表的BFS(宽度优先遍历)
  2. Qt文档阅读笔记-Q_INVOKABLE官方解析及Qt中反射的使用
  3. 达梦工作笔记-将A表的ID插入到B表,将A表的数据更新到B表
  4. 对HTTP基本认识(HTTP协议入门必备)
  5. Qt工作笔记-Qt之自定义属性Q_PROPERTY
  6. vaex 处理海量数据_Vaex真香!几秒钟就能处理数十亿行数据,比Pandas、Dask更好用...
  7. python静态变量_python静态变量
  8. 小说网jsp源码_基于jsp+mysql的JSP小说网
  9. p怎么调用python的实例属性_Python中类的声明,使用,属性,实例属性,计算属性及继承,重写...
  10. python读取配置文件获取所有键值对_python ConfigParser模块读写配置文件