Cloud Foundry中的数据库实例是什么?

时间:2019-02-09 00:05:28

标签: database cloudfoundry rdbms liquibase pivotal-cloud-foundry

在执行以下命令后,

     $ cf create-service-key mysql-db-service MY-KEY

创建了一个名称为MY-KEY(如下所示)的文件,该文件的密钥为name(数据库实例),值为service-instance-db

{
  "hostname": "w-ns27y31.q-g1444.bosh",
  "jdbcUrl": "jdbc:mysql://w-ns27y31.q-g1444.bosh:3306/service_instance_db?user=ccd64a5aa128fffffffffff26d80&password=eddddddd50g&useSSL=false",
  "name": "service_instance_db",
  "password": "el99ffffffffff",
  "port": 3306,
  "uri": "mysql://ccd64a5aa1284dadab01271693d26d80:el9905261y23b50g@w-ns27y31.q-g1444.bosh:3306/service_instance_db?reconnect=true",
  "username": "ccd64ddddddddd271693d26d80"
}

如果我创建了多个服务密钥文件,则每个服务密钥文件中的hostnamename保持不变,但是用户名和密码会更改


在数据库世界中,我们使用语法create DATABASE语句

创建数据库实例

然后在该数据库实例上运行一个应用程序,说instance1

对于另一个新的不同应用程序,我们创建另一个数据库实例,例如instance2


1)密钥service-instance-db的值name是数据库实例吗?在服务密钥文件MY-KEY

2)如果是,那么我们在mysql-db-service应用程序上为Cloud Foundry上的每个新数据库应用程序创建一个单独的服务密钥文件,但是我在服务密钥文件中看到相同的数据库实例名称service-instance-db。我怎么理解的?

1 个答案:

答案 0 :(得分:2)

  

1)密钥名称的some-service-db值是否是数据库实例?在服务密钥文件MY-KEY

坦白地说,这取决于服务代理的处理方式。通常,运行cf create-service将创建服务的实例,运行cf bind-servicecf create-service-key将创建可用于访问服务的一组凭据。

这取决于经纪人,究竟发生了什么。运行cf create-service可能导致从共享多租户服务中的分区到运行服务群集的一组专用VM带来的一切。

  

2)如果是,那么我们在mysql-db-service应用程序上为Cloud Foundry上的每个新数据库应用程序创建一个单独的服务密钥文件,但是我在服务密钥文件中看到相同的数据库实例名称some-service-db。我怎么理解的?

在大多数情况下,服务密钥只是用于访问服务实例的一组新的(可能是唯一的)凭据。您需要查看服务代理的文档,以确切了解其处理方式。

希望有帮助!