我程序中使用嵌入式mysql数据库,允许用户在运行时改变数据库路径。我的执行顺序是:  1 程序启动时 mysql_server_init(7, @argv, nil); //argv中含有默认数据库路径
参数,比如 '--datadir=D:\DataBase';
  2 程序运行中每次需要使用数据库时都执行以下部分:
    aHandle := mysql_init(nil);
    db := mysql_real_connect(aHandle, nil, nil, nil, PAnsichar(dbname), 0, nil, 0)
        //dbname 对应 D:\DataBase 下一个文件夹,即D:\DataBase\dbname中有数据库表;
    ……  
    mysql_Close(db);  以上没有问题。假如现在将数据库路径改为E:\DataBase,数据库名为123,已知E:\DataBase\123
中有数据库表。当我再次调用
  mysql_server_init(7, @argv, nil); //--datadir=E:\DataBase'
  并执行上面步骤2的代码后,发现其实还是对D:\DataBase\dbname 操作。
  
  但是当我保存改动,重启程序后使用E:\DataBase\123正常。怎么回事呢?
该怎样写才能不用重启程序? 程序中没有使用mysql_server_end 。