File tree Expand file tree Collapse file tree 3 files changed +57
-0
lines changed Expand file tree Collapse file tree 3 files changed +57
-0
lines changed Original file line number Diff line number Diff line change
1
+ This is an example program showing how to use the native MySQL connections from Google App Engine to Google Cloud SQL.
2
+
3
+ ## Deploying
4
+
5
+ 1 . Edit the ` unix_socket ` in ` main.py ` to point to a Cloud SQL instance.
6
+
7
+ 2 . Upload the app: ` appcfg.py update . ` .
Original file line number Diff line number Diff line change
1
+ runtime : python27
2
+ api_version : 1
3
+ threadsafe : yes
4
+
5
+ handlers :
6
+ - url : /
7
+ script : main.app
8
+
9
+ libraries :
10
+ - name : MySQLdb
11
+ version : " latest"
Original file line number Diff line number Diff line change
1
+ # Copyright 2013 Google Inc. All Rights Reserved.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ import os
15
+
16
+ import MySQLdb
17
+ import webapp2
18
+
19
+
20
+ class IndexPage (webapp2 .RequestHandler ):
21
+ def get (self ):
22
+ self .response .headers ['Content-Type' ] = 'text/plain'
23
+
24
+ if os .getenv ('SERVER_SOFTWARE' , '' ).startswith ('Google App Engine/' ):
25
+ db = MySQLdb .connect (
26
+ unix_socket = '/cloudsql/my_project:my_instance' ,
27
+ user = 'root' )
28
+ else :
29
+ db = MySQLdb .connect (host = 'localhost' , user = 'root' )
30
+
31
+ cursor = db .cursor ()
32
+ cursor .execute ('SHOW VARIABLES' )
33
+ for r in cursor .fetchall ():
34
+ self .response .write ('%s\n ' % str (r ))
35
+
36
+
37
+ app = webapp2 .WSGIApplication ([
38
+ ('/' , IndexPage ),
39
+ ], debug = True )
You can’t perform that action at this time.
0 commit comments