>但是,就像我们项目中的源文件一样,数据库也在不断变化。这就是为什么我们还需要一种方法来跟踪我们所做的变化并轻松与团队的其他成员分享。
在本文中,我们将查看DBV,DBV是MySQL数据库中编写的PHP的数据库版本控制系统,因此您需要安装PHP和MySQL,然后才能使用它,以及Apache或Nginx等Web服务器。>有关此软件的重要说明是它不是独立数据库版本控制系统,因为它需要诸如GIT,Mercurial或SVN之类的版本控制系统来与您的团队同步。
>安装dbv
开始使用DBV,首先您必须从其网站下载安装程序,将其提取到项目目录中,然后将结果文件夹重命名为DBV。这将为您提供以下路径:
>
> dbv配置<span>my_project/dbv</span>
>您可以通过创建config.php.sample文件的副本并将其重命名为config.php。
>在这里要更新的最重要的内容是前两个部分。只需将my_username,my_password,my_database的值替换为当前数据库配置中的值:上面的配置文件中的第一部分是关于计算机中的MySQL数据库详细信息。
第二部分是DBV本身的登录详细信息。
下一个打开.gitignore文件。默认情况下,它包含以下内容:
<span>my_project/dbv</span>
这些是Git将忽略的文件。但是,如果您知道自己的数据库信息(用户,密码,数据库名称)与团队配偶,则可以从.gitignore文件中删除config.php。如果不是这样,他们将必须创建自己的配置文件并将其排除在源控件中。
接下来,您还必须将数据/元/修订文件添加到.gitignore,因为这是DBV列出有关数据库本地副本的信息。您的队友可能会有所不同,因此需要将其排除在源控件之外。完成配置后,您现在可以将DBV添加到版本控件中:
>然后将其推到您的中央存储库,以供团队的其他成员拉动:
<span><span><?php </span></span><span><span>/** </span></span><span><span> * Your database authentication information goes here </span></span><span><span> * <span>@see http://dbv.vizuina.com/documentation/ </span></span></span><span><span> */ </span></span><span><span>define('DB_HOST', 'localhost'); </span></span><span><span>define('DB_PORT', 3306); </span></span><span><span>define('DB_USERNAME', 'my_username'); </span></span><span><span>define('DB_PASSWORD', 'my_password'); </span></span><span><span>define('DB_NAME', 'my_database'); </span></span><span> </span><span><span>/** </span></span><span><span> * Authentication data for access to DBV itself </span></span><span><span> * If you leave any of the two constants below blank, authentication will be disabled </span></span><span><span> * <span>@see http://dbv.vizuina.com/documentation/#optional-settings </span></span></span><span><span> */ </span></span><span><span>define('DBV_USERNAME', 'my_username'); </span></span><span><span>define('DBV_PASSWORD', 'my_password'); </span></span><span><span>?></span></span>有什么变化以跟踪?
> 在我们继续使用dbv之前,
>。我想触摸一些更改以跟踪的一些变化。在数据库世界中,几乎所有更改都可以纳入源控制。这包括以下内容:<span>config.php </span><span>.buildpath </span><span>.project </span><span>.settings</span>
重命名的表
>
<span>git add dbv </span><span>git commit -m "add dbv into project"</span>
>从上方的屏幕截图中,您将看到您之前在Config.php中提供的数据库中当前的表。还有一个在DB字段中显示特定表是否在数据库中和磁盘中是否显示当前表是否保存在文件系统中。有了这些信息,您几乎都知道您当前是否有数据库的最新副本。
>
使用DBV时要记住的一件重要的事情是,您对数据库本地副本进行的任何更改都应具有本地副本,您可以将其提交为源控件。这意味着,如果您在数据库中创建一个新表,则必须将其导出到磁盘。导出到磁盘的所有表都保存在DBV安装的数据/架构目录中。您可以从下面的屏幕截图中看到我们目前在文件系统中没有TBL_Leadinfo表:
导出新创建的表格磁盘后,您必须将其提交为版本控件:
<span>my_project/dbv</span>
然后,您可以将其推到中央存储库:
<span><span><?php </span></span><span><span>/** </span></span><span><span> * Your database authentication information goes here </span></span><span><span> * <span>@see http://dbv.vizuina.com/documentation/ </span></span></span><span><span> */ </span></span><span><span>define('DB_HOST', 'localhost'); </span></span><span><span>define('DB_PORT', 3306); </span></span><span><span>define('DB_USERNAME', 'my_username'); </span></span><span><span>define('DB_PASSWORD', 'my_password'); </span></span><span><span>define('DB_NAME', 'my_database'); </span></span><span> </span><span><span>/** </span></span><span><span> * Authentication data for access to DBV itself </span></span><span><span> * If you leave any of the two constants below blank, authentication will be disabled </span></span><span><span> * <span>@see http://dbv.vizuina.com/documentation/#optional-settings </span></span></span><span><span> */ </span></span><span><span>define('DBV_USERNAME', 'my_username'); </span></span><span><span>define('DBV_PASSWORD', 'my_password'); </span></span><span><span>?></span></span>>
下一步告诉您的团队伴侣访问DBV页面(http:// localhost/your_project/dbv)。
<span>config.php </span><span>.buildpath </span><span>.project </span><span>.settings</span>您的团队伴侣可能会有类似于以下屏幕:
在这一点上,他可以在TBL_Tasks表旁边的复选框中打勾,然后单击“推送到数据库”按钮。这将在数据库中创建tbl_tasks表。>
修订
>如果您像我一样,并且尝试更新架构(添加了一个新字段,删除字段,更新数据类型等),则可能已经注意到DBV并不了解DBV默认。对于这些更改,您需要创建修订文件。您可以通过在DBV安装中的数据/修订目录中创建新文件夹来做到这一点。命名文件夹的约定正在使用一个数字。因此,您第一次进行修订时,文件夹名称为1,然后下次是2,依此类推。请注意,修订是可以应用于整个数据库的更改。这意味着您可以自由地修改一个以上表的结构,但是只能更改单个表并对其进行修改的好实践。这是您和您的团队轻松管理更改并以后了解更改的。这种做法的唯一例外是更改彼此相关的时候。在这种情况下,将这些更改放在一个修订中是很有意义的。
接下来,在DBV安装中的数据/修订/1目录中创建一个新文件,并将您刚刚执行的查询作为目录。命名文件tbl_users.sql。这里的约定使用修改表的名称作为修订文件的名称。
如果要对多个表进行修改,请为每个表创建一个单独的文件。 之后,您可以将新文件提交到源控件中:
<span>git add dbv </span><span>git commit -m "add dbv into project"</span>
,然后将其推到您的中央存储库:
>您可以再次通知团队伴侣有关特定变化的信息。在更改数据库时,通信是关键。您想确保团队中的每个人都与您在同一页面上。
>现在,如果他们从浏览器访问DBV,现在可以看到修订版。他们现在要做的就是在修订旁边的复选框中打勾,然后单击“运行选定的修订”按钮。这将使您更改其本地数据库副本:
>
>
在本文中,我们研究了将DBV与git一起使用,但是您几乎可以使用您选择的任何版本控制系统。反馈?请在下面的评论中保留它!在数据库版本上经常询问问题
>
>可以使用哪些工具用于数据库版本?
可用于数据库版本的工具。一些受欢迎的包括液体,飞速和dbmaestro。这些工具提供了功能,例如自动架构更新,回滚功能以及多种数据库类型的支持。工具的选择取决于开发团队的特定要求和偏好。实现数据库版本操作的挑战是什么?实现数据库版本,由于几个原因可能会具有挑战性。首先,它需要更改开发过程,这可能很难管理。其次,它需要仔细处理数据库迁移,以避免数据丢失或损坏。最后,它需要对数据库架构及其所做的更改有很好的了解。
>数据库版本如何与DevOps相关?
>
>数据库版本在数据治理中的作用是什么?数据库版本在通过确保数据库模式的完整性和一致性来治理。它提供了所有变化的历史记录,这对于审计和合规性可能有用。它还促进了团队成员之间的协作和沟通,这对于有效的数据治理是至关重要的。
>以上是数据库版本使用DBV的详细内容。更多信息请关注PHP中文网其他相关文章!