日期:2014-05-16  浏览次数:20938 次

mysql 数据目录 datadir 设置成相对目录 (window环境)

今天想把已经导入数据的mysql打包起来发送给不会用数据库的人,因为不知道对方会解压到哪个目录,所以希望把mysql的数据目录配置成相对目录。在网上搜了一下,好像都说只能用绝对路径,或者是通过batch生成配置文件

?

但是,通过实践证明,mysql是可以配置相对路径的。。。。。。

?

原先的默认datadir是C盘底下的xxx目录,到那个目录把data文件夹复制到mysql的安装目录底下,比如?F:\program files\MySQL\MySQL Server 5.5\data里(安装目录里本来就有个data文件夹) 也就是说数据文件是在?F:\program files\MySQL\MySQL Server 5.5\data\data里

打开my.ini,修改配置项

?

datadir="./../data/data"
?

./当前目录表示的是mysql的bin文件夹,也就是说相对路径./../指的就是mysql的安装路径

?

重启mysqld.exe 即可,发现是可以用的!

?

?

补充: 后来发现,相对路径是相对于在哪个目录底下启动的mysqld.exe

?

比如,写一个批处理程序 test.bat,放在MySQL目录下,

内容为

?

start "MySQL Server 5.5\bin\mysqld.exe"
?

?

那么./当前目录指的是MySQL目录,如果不更改my.ini相对路径,mysqld.exe启动会错误,因为data的相对路径不正确,批处理命令要改成

?

cd "MySQL Server 5.5\bin\"
start mysqld.exe
?

?

?

?

原创,转载请标明源

http://asyty.iteye.com/blog/1236683

?