我正在用CodeIgniter 3开发一个网站,因为我在不同的机器上工作,所以我可以通过git在任何环境中通过推送和拉出公共存储库来保持代码同步。
但是,对于数据库我不能这样做(我使用的是MySql),所以理想情况下,我希望在远程服务器上存储一个数据库,并允许我的所有机器在那里连接。
据我所知,对于存储在给定服务器上的引用数据库,没有类似git的工具在不同的机器上更新db,因此我有两个问题:
特别是从第二点,我知道MySql允许远程连接,但是如果我已经很好地理解了,我需要通过设置一个允许连接的白名单来打开远程数据库,但是考虑到我的本地主机用动态if连接到internet,这听起来不太方便,而且我应该在连接时随时更新白名单。
发布于 2015-08-13 12:45:54
我建议
1.在根文件夹中创建一个Db.sql文件,当我们在DB中进行更改时,我们应该相应地更新它,
2.您可以通过CI中的配置文件指向托管的SQL。所以所有的团队成员只访问一个DB。托管了一个。
发布于 2015-08-13 13:32:30
您所要做的就是设置您的CI数据库指向您的远程服务器。因此,在application\config\database.php中,请检查以下设置:
$active_group = 'remote';
$db['remote'] = array(
'dsn' => '',
'hostname' => '', //<-- your server IP address
'username' => '', //<-- The username you should have already set in cpanel
'password' => '', //<-- the password you should have already set in cpanel
'database' => '', //<-- the name of your database
'dbdriver' => 'mysqli',
'dbprefix' => '',
'pconnect' => FALSE,
'db_debug' => TRUE,
'cache_on' => FALSE,
'cachedir' => '',
'char_set' => 'utf8',
'dbcollat' => 'utf8_general_ci',
'swap_pre' => '',
'encrypt' => FALSE,
'compress' => FALSE,
'stricton' => FALSE,
'failover' => array(),
'save_queries' => TRUE
);发布于 2019-08-27 16:49:27
如果您正在从头开发一个站点,则可以使用迁移。这将允许git跟踪数据库,因为数据库结构将在迁移文件中。guide/libraries/migration.html
https://stackoverflow.com/questions/31988527
复制相似问题