App EngineからGoogle Cloud SQLに接続しようとしました。エラー500を取得し、ログに「アクセスが拒否されました。ユーザー 'root' @ 'cloudsqlproxy〜'(パスワードを使用:NO)」)。 App EngineとクラウドSQLは同じプロジェクトにあります。接続するコード:App EngineからGoogle Cloud SQLに接続:アクセスが拒否されました
class MainPage(webapp2.RequestHandler):
def get(self):
self.response.headers['Content-Type'] = 'text/plain'
env = os.getenv('SERVER_SOFTWARE')
if (env and env.startswith('Google App Engine/')):
# Connecting from App Engine
db = MySQLdb.connect(
unix_socket='/cloudsql/<project-id>:europe-west1:<instance-name>',
user='root')
cursor = db.cursor()
cursor.execute('SELECT 1 + 1')
self.response.write('pong')
app = webapp2.WSGIApplication([
('/', MainPage),
], debug=True)
わかりましたが、私はすべてを正しく行っています。上のコードは、Google Dev Consoleで表示できるスニペットを効果的にコピー貼り付けたものです。 StackExchangeのどこでも、私はパスワードを渡すべきではないと言われているので、私はそれをやっていません。私は、インスタンスを作成したときにrootユーザーのパスワードを変更しました。私は、なぜデータベースがApp Engineへのアクセスを拒否するのか、同じプロジェクトにいるのか分かりません。どのようなデータベースのアクセス許可を確認する方法はありますか?