现在需要做一个光盘检索程序,但是数据库没法在光盘中注册服务并运行。
我在install.bat中这样写的set JAVA_HOME=%1%\jdk1.6.0_12
set CATALINA_HOME=%1%\apache-tomcat-6.0.26
net stop MySQL5
call %1%\mysql-5.0.67-win32\bin\mysqld --remove
call %1%\mysql-5.0.67-win32\bin\mysqld --install MySQL5 --defaults-file=%1%\mysql-5.0.67-win32\my-small.ini
net start MySQL5
pause
call %1%\apache-tomcat-6.0.26\bin\startup.bat install MyTomcat
net start MyTomcat
exit
返回结果是:E:\>set JAVA_HOME=E:\\sys\jdk1.6.0_12E:\>set CATALINA_HOME=E:\\sys\apache-tomcat-6.0.26E:\>net stop MySQL5
没有启动 MySql5 服务。请键入 NET HELPMSG 3521 以获得更多的帮助。
E:\>call E:\\sys\mysql-5.0.67-win32\bin\mysqld --remove
The service doesn't exist!E:\>call E:\\sys1\mysql-5.0.67-win32\my-small.ini
系统找不到指定的路径。E:\>net start MySQL5
发生系统错误 3。系统找不到指定的路径。
E:\>pause
请按任意键继续. . .

解决方案 »

  1.   

    try:
    "E:\\sys\mysql-5.0.67-win32\bin\mysqld" --defaults-file="E:\\sys1\mysql-5.0.67-win32\my-small.ini" MySQL
      

  2.   

    没有办法,你的MYSQL启动的时候会需要对datadir 目录的写入权限,你的CD肯定不行。
    你可以把BIN文件放在光盘上,但datadir 目录需要在可读写的存储设备中。
      

  3.   

    datadir就是data那个目录吧,里面存的项目数据库。没有写的操作也不行吗
      

  4.   

    还有log要写啊。所以,基本上没有办法。
      

  5.   

    还有这么变态的需求。 
    不过需求对mysql更熟一些才能干这活。 
      

  6.   

    对你自己的数据库,只读是可以的,但MYSQL还需要一些权限在它的MYSQL自带数据库上,还是innodb的LOG文件上。
      

  7.   

    受此文启发,建议哪位好心人给MySQL发一个feature request,让它们提供此特性。
      

  8.   

    光盘启动后找一个临时目录将mysql 解压过去在运行。
      

  9.   

    我看了看,这样的话就要向用户机器上拷贝将近200MB的文件,不太合适,还是选用了ACCESS做数据库