存储我的服务sqlite db文件的最佳位置?

时间:2013-02-18 13:16:01

标签: sqlite symfony doctrine-orm

我是Symfony2的新手。我正在开发一种需要根据自己的需要使用数据库的实用程序服务。

我希望将其数据与其他服务/包使用的mysql全局数据库分开。

存储db文件的最佳位置在哪里以及如何指定路径?

示例(错误)代码:

class MyCustomService
{
    protected $config;

    public function __construct(array $config)
    {
        $this->config = $config;
        $this->setupDB();
    }    

    private function setupDB()
    {
        $config = new \Doctrine\DBAL\Configuration();
        $connectionParams = array(
            'driver' => 'pdo_sqlite',
            'path' => realpath('.') . '\dbmanager.db'
        );        
       $conn = \Doctrine\DBAL\DriverManager::getConnection($connectionParams, $config); 

       //...
    }
}

感谢您的帮助

1 个答案:

答案 0 :(得分:3)

It Shouldn't be in web folder :)
  • 如果您的数据库可以在清除缓存时删除,那么app / cache就可以了。

  • 如果你想要持久数据库,那么你可以选择app / {name of service} /db.sqlite“或data / {name of service} /db.sqlite”

  • 我宁愿在配置选项

  • 中传递数据库的名称
  

另请注意,在* NIX下,您的Web服务器/ cli的用户必须具有   对数据库文件的读写权限以及读,写和   对包含目录执行权限