我正在尝试找到一种从我的Django应用程序查询Google Cloud SQL数据库的有效方法。此应用程序不在App Engine上托管,只在本地服务器上托管。
我找到了几个链接:
This one is a generic python connector
This answer提到了一种从本地Django应用程序中执行此操作的方法,但看起来它更适合测试。
我不打算将CloudSQL用作我的应用程序后端,只是偶尔查询它(可能每天都要读取一个CloudSQL表中的所有记录,并用结果更新本地数据库)
答案 0 :(得分:0)
这是可能的,而不仅仅是测试。你想要这样的东西:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'name_of_your_database',
'USER': 'root',
'PASSWORD': 'your_cloud_sql_root_password',
'HOST': 'assigned_IP_of_your_cloud_sql_instance',
'PORT': '3306',
}
}
name_of_your_database是您使用CREATE DATABASE
创建的数据库。
您可能还希望使用SSL来保护您的数据,因为它通过公共互联网。要执行此操作configure SSL for your instance,然后将以下内容添加到默认的django数据库选项:
'OPTIONS': {
'ssl': {
'ca': '<PATH TO CA CERT>',
'cert': '<PATH TO CLIENT CERT>',
'key': '<PATH TO CLIENT KEY>'
}
}