博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
设置Django连接到Google Cloud SQL(MYSQL)
阅读量:4164 次
发布时间:2019-05-26

本文共 1912 字,大约阅读时间需要 6 分钟。

设置Django连接到Google Cloud SQL(MYSQL)

环境:

python2.7

GAE
Django1.5

目的:

将开发的Table反映到Google的数据库上。

然后上传到GAE生产环境时,可以正常使用数据库。

官方教程

设置数据库连接

Setting.py

import osif os.getenv('SERVER_SOFTWARE', '').startswith('Google App Engine'):    # Running on production App Engine, so use a Google Cloud SQL database.    DATABASES = {        'default': {            'ENGINE': 'django.db.backends.mysql',            'HOST': '/cloudsql/your-project-id:your-instance-name',            'NAME': 'django_test',            'USER': 'root',        }    }elif os.getenv('SETTINGS_MODE') == 'prod':    # Running in development, but want to access the Google Cloud SQL instance    # in production.    DATABASES = {        'default': {            'ENGINE': 'django.db.backends.mysql',            'INSTANCE': 'your-instance-ip-address',            'NAME': 'django_test',            'USER': 'root',            'PASSWORD': 'password',        }    }else:    # Running in development, so use a local MySQL database.    DATABASES = {        'default': {            'ENGINE': 'django.db.backends.mysql',            'NAME': 'django_test',            'USER': 'root',            'PASSWORD': 'password',        }    }

其中第一段为在GAE服务器端的连接GAE数据库的执行代码。

第二段为本地直接连接到GAE数据库的代码。
第三段为本地连接本地数据库的代码。
下面具体设置第二段

elif os.getenv('SETTINGS_MODE') == 'prod':    # Running in development, but want to access the Google Cloud SQL instance    # in production.    DATABASES = {        'default': {            'ENGINE': 'django.db.backends.mysql',            'HOST': 'your-instance-ip-address', <- 关键字为HOST,设为数据库所在的IP地址            'NAME': 'django_test',  <- 数据库名,需要在GAE上添加完毕            'USER': 'root', <- 在GAE上设置完毕可以从本地访问的用户            'PASSWORD': 'password', <- 密码        }    }

同步Table的步骤

  • 在GAE上添加数据库,添加本地IP,设置可以从本地的访问
  • 在GAE上设置可以从本地访问的用户,密码
  • 本地设置环境变量 SETTINGS_MODE=prod
  • 执行同步数据库 ./manage.py syncdb

执行完毕后,显示产生各个Table,将Django的Model反映到GAE的数据库上,

即可以现在使用GAE的数据库了。
上传到GAE服务器后,第一种方式也是可以正常使用了。


转载地址:http://fgmxi.baihongyu.com/

你可能感兴趣的文章
包含库的问题
查看>>
flex 中 bindable的意义
查看>>
flex常用网站
查看>>
flex 页面跳转
查看>>
flex 3.0中关于两个.mxml文件之间链接的简单方法
查看>>
使用viewstack
查看>>
Flex 学习站点汇总
查看>>
12个flex常用代码
查看>>
Flex项目开发资源
查看>>
[Flex]Flex编程注意之直接获取某个组件的对象(this[]用法)
查看>>
Flex4中获取任意组件的ID或其他属性值
查看>>
Flex4中获取任意组件的ID或其他属性值
查看>>
Flex4中获取任意组件的ID或其他属性值
查看>>
flex 设置背景图片
查看>>
Flex 4中组件背景设置(填充方式)group为例子
查看>>
Setting a background image on a Spark Application in Flex 4
查看>>
flash 遍历sprite
查看>>
loaderInfo 和 contentLoaderInfo 的区别
查看>>
flash 声音设置
查看>>
as2全局变量等
查看>>