注册Mysql服务
用InstallAnywhere打包Java程序包含MySQL数据库
InstallAnywhere打包Java程序时可以自动完成jre的打包,但是需要MySQL数据库的程序就得手动添加。资料太少,纠结了三天,终于解决
1、 下载绿色版的MySQL,可以去官网下载。网友制作了MySQL的绿色精简Bat版(http://download.csdn.net/source/524812),可以最大化的缩小安装包的体积。所以我采用了这种方式。
2、 绿色精简的MySQL是以进程方式启动,对于安装版的软件,使用服务方式启动更方便。从完整版拷贝/bin目录下mysqld-nt.exe文件到精简版的相应目录中,同时在MySQL目录下创建一个启动服务需要的my.ini配置文件,基本内容如下
view plaincopy to clipboardprint?
[mysqld]
#设置basedir指向mysql的安装路径
basedir=C:/Program Files/Tx2/MySQL
datadir=C:/Program Files/Tx2/MySQL/data
[mysqld]
#设置basedir指向mysql的安装路径
basedir=C:/Program Files/Tx2/MySQL
datadir=C:/Program Files/Tx2/MySQL/data
3、 数据库安装完成需要导入一个sql文件来进行初始化,建立应用程序所需要的结构。从完整版拷贝/bin目录下mysqldump.exe文件到精简版的相应目录中,同时将要安装的应用程序所需要的sql文件放到/bin目录下
4、 将MySQL目录中添加到InstallAnywhere工程中,在Post-Install(安装之后)添加以下动作:
a) my.ini中包含了mysql程序的路径,需要安装完成后根据环境修改。添加一个Modify Text File – Single File(修改单文件),Installed file中选择my.ini文件$USER_INSTALL_DIR$$/$MySQL$/$my.ini,点击下边Search and replace strings后的Configure。增加两个字符串替换(不包含引号),
1、"C:/Program Files/Tx2”替换为“$USER_INSTALL_DIR$”,
2、”\” 替换为 “/”。
b) 将mysql注册为系统服务。添加一个Execue Script/Batch file(执行脚本/命令)。在Comment填写动作的名字“注册Mysql服务”,在Script填写命令(Call "$USER_INSTALL_DIR$\MySQL\bin\mysqld.exe" -install Mysql --defaults-file="$USER_INSTALL_DIR$\MySQL\my.ini" )(不包含括号)。因为执行完此步才能继续向下执行,选中下边
相关文档:
重装时出现could not start the service mysql error:0的错误时
在控制面板中运行添加删除程序,将mysql卸载;
卸载后打开注册表,查看HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services 下的键值,如果有相关mysql键值(mysql、mysqladmin)则删掉,即可;
重启,将mysql的安装残余目录删掉 (查看服务,此时服务中已没 ......
--多表操作
前面我们熟悉了数据库和数据库表的基本操作,现在我们再来看看如何操作多个表。
在一个数据库中,可能存在多个表,这些表都是相互关联的。我们继续使用前面的例子。前面建立的表中包含了员工的一些基本信息,如姓名、性别、出生日期、出生地。我们再创建一个表,该表用于描述员 ......
修改和备份、批处理
有时我们要对数据库表和数据库进行修改和删除,可以用如下方法实现:
1、增加一列:
如在前面例子中的mytable表中增加一列表示是否单身single:
mysql> alter table mytable add column single char(1);
2、修改记录
将abccs的single记录修改为“y”:
mysql> ......
MYSQL where id in问题
SELECT * from product WHERE id IN (‘1522,1523,1524′)ORDER BY id DESC
在MYSQL里面执行这个语句只返回1522的值。
执行
SELECT * from product WHERE instr(‘1522,1523,1524′,id) ORDER BY id DESC
或者
SELECT * from product WHERE instr(‘1522,1523,1524 ......