我是网络开发的新手。我在学校的团队正在使用J2EE和MySQL开发一个将部署在AWS上的Web应用程序。我们使用GitHub进行版本控制。
我只是想知道我是否在终端上使用MySQL将表添加到本地"测试"数据库,我的队友怎么能访问它们?我应该在某个地方部署数据库,还是在代码中创建表,以便我的队友在运行代码时可以自动将表存放在本地数据库中?但是,如何共享已经存储在数据库中的数据?
很抱歉有这个天真的问题,我试着在网上做一些研究,但似乎结果更先进,关于PHP而不是J2EE ......如果你能推荐一些好的资源供我阅读也会很棒因为我认为这是一个我应该知道的非常基本的概念。
答案 0 :(得分:1)
您可以在代码中维护数据库的架构,以便可以将其提交给源代码控制并由其他人访问。无论您如何使用测试数据库进行开发,这都是一种很好的做法。
您的团队成员将无法轻松访问您的本地数据库。对于分布式开发环境,最好在远程服务器上托管测试数据库,例如在公有子网或RDS中的EC2实例上。然后,您可以将数据库的连接信息(主机,端口)和凭据传递给其他团队成员。
在EC2或RDS中创建数据库时,请注意安全组。您可以向世界开放(0.0.0.0)或将其缩小到仅限于您的团队成员' IP地址以加强安全性。否则,团队成员将无法连接到数据库。
答案 1 :(得分:0)
您可以使用VM或容器创建测试环境,并与团队成员共享。您还应该注意如何跟踪这些测试环境中的更改。以下answer描述了如何使用docker映像共享具有架构的数据库。您可以version control这些图像,以便您可以跟踪更改。