4

我是 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); 

       //...
    }
}

谢谢你的帮助

4

1 回答 1

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

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

  • 我宁愿在配置选项中传递数据库的名称

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

于 2013-02-18T13:34:44.533 回答