0
我正在嘗試使用此Mac版本安裝Wordpress。我可以在本地使用以下設置部署:在GAE中部署和使用Cloud SQL
define('DB_NAME', 'db_name');
/** Local environment MySQL login info */
define('DB_HOST', 'localhost');
define('DB_USER', 'root');
define('DB_PASSWORD', 'whatever');
然而,當我嘗試使用雲SQL部署它,我似乎無法找出正確的設置。
在DB_HOST,我曾嘗試以下:
:/cloudsql/project-id:custom-db-instance
:/cloudsql/project-id:region:custom-db-instance
:/cloudsql/project-id:wordpress
:/cloudsql/project-id:region:wordpress
- 雲的SQL Server的IP地址
使用的app.yaml,我已經設置的app.yaml env_variables爲以下:
- MYSQL_DSN:MySQL的:unix_socket =/CLOUDSQL/INSTANCE_CONNECTION_NAME; DBNAME = DATABASE
- MYSQL_USER:根
- MYSQL_PASSWORD: ''
我想知道什麼是真正的設置,因爲文檔看起來不統一。這裏是我的文檔閱讀:
- https://cloud.google.com/appengine/docs/php/cloud-sql/
- https://googlecloudplatform.github.io/appengine-php-wordpress-starter-project/
- https://github.com/GoogleCloudPlatform/appengine-php-wordpress-starter-project
實例連接名稱表示'project-id:region:wordpress'。我應該如何格式化主機?我試過'::/cloudsql/project-id:region:wordpress'。 SQL實例詳細信息頁面還顯示「此項目中的應用程序:所有授權」,因爲GAE和Cloud SQL都在一個項目中。 –
您不應該使用DB_HOST。按照https://cloud.google.com/appengine/docs/php/cloud-sql/編輯您的app.yaml。然後,只需嘗試下面的代碼: $ app ['database'] = function()use($ app){ $ dsn = getenv('MYSQL_DSN'); $ user = getenv('MYSQL_USER'); $ password = getenv('MYSQL_PASSWORD');如果(!isset($ dsn,$ user)|| false === $ password){ 拋出新異常('Set MYSQL_DSN,MYSQL_USER,and MYSQL_PASSWORD environment variables'); } $ db = new PDO($ dsn,$ user,$ password); return $ db; }; – Herman
我也讀過這個。雖然Wordpress不使用DSN。我想我只是要使用Google Cloud SQL並使用Cloud SQL Launcher。 –