Este tutorial é útil se:
- Executar aplicações no App Engine.
- Use o Cloud SQL como base de dados.
- Usar o phpMyAdmin como uma interface para o MySQL ou preferir uma interface Web para a administração da base de dados.
Se usar o Compute Engine, considere usar uma das stacks de desenvolvimento ou produtos disponíveis através do Click to Deploy. As implementações de stacks que incluem o MySQL, como o LAMP e o LEMP, ou produtos como o Drupal, oferecem uma opção para instalar o phpMyAdmin como parte da implementação.
Objetivos
- Implemente o phpMyAdmin no ambiente padrão do App Engine.
Custos
Este tutorial usa componentes faturáveis da Cloud Platform, incluindo:
- App Engine
- Cloud SQL
Use a calculadora de preços para gerar uma estimativa de custo com base na sua utilização prevista.
Antes de começar
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Install the gcloud CLI.
-
Se estiver a usar um fornecedor de identidade (IdP) externo, tem primeiro de iniciar sessão na CLI gcloud com a sua identidade federada.
-
Para inicializar a CLI gcloud, execute o seguinte comando:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Install the gcloud CLI.
-
Se estiver a usar um fornecedor de identidade (IdP) externo, tem primeiro de iniciar sessão na CLI gcloud com a sua identidade federada.
-
Para inicializar a CLI gcloud, execute o seguinte comando:
gcloud init
- Crie uma instância do Cloud SQL de segunda geração.
- (Opcional) Implemente uma aplicação do App Engine que use a sua instância do Cloud SQL ou selecione uma aplicação existente.
Por exemplo, crie e implemente o exemplo do livro de visitas. Embora possa implementar o phpMyAdmin por si só, é provável que queira usá-lo com uma aplicação do App Engine no seu cenário do mundo real.
Num terminal do Cloud Shell, introduza o seguinte comando para transferir o código fonte para a versão 4.9.5 do phpMyAdmin:
wget https://files.phpmyadmin.net/phpMyAdmin/4.9.5/phpMyAdmin-4.9.5-all-languages.tar.gz
Para usar uma versão diferente do phpMyAdmin, use os links para as versões disponíveis na página de downloads do phpMyAdmin.
Crie um novo diretório. Vai extrair os ficheiros para este diretório.
mkdir phpMyAdmin
Extraia os ficheiros do arquivo para o novo diretório.
tar -xzvf phpMyAdmin-4.9.5-all-languages.tar.gz -C phpMyAdmin --strip-components=1
No diretório que criou, denominado
phpMyAdmin
, crie um novo ficheiro denominadoapp.yaml
.cd phpMyAdmin touch app.yaml
Usando o seu editor favorito, cole o seguinte texto em
app.yaml
.Se estiver a implementar o phpMyAdmin como a primeira e única aplicação no App Engine, altere o valor de
service
dephpmyadmin
paradefault
.Normalmente, implementaria o phpMyAdmin como um serviço de uma aplicação existente e forneceria um nome para o serviço. No entanto, se ainda não tiver implementado uma aplicação, tem de usar o nome do serviço "default". Não há problema para os fins deste tutorial se estiver a experimentar o phpMyAdmin no App Engine.
Este tutorial só funciona para o ambiente padrão do App Engine.
Guarde o ficheiro.
Crie um novo ficheiro com o nome
config.inc.php
.touch config.inc.php
Usando o seu editor favorito, cole o seguinte texto em
config.inc.php
.Abra o Google Cloud Shell e execute o seguinte para obter uma string aleatória para o seu blowfish:
php -r "echo password_hash(uniqid(), PASSWORD_BCRYPT).PHP_EOL;"
Cole o novo segredo no lugar de
{{your_secret}}
emconfig.inc.php
.Aceda à página de instâncias do Cloud SQL na Google Cloud consola.
Clique na instância do Cloud SQL para apresentar a respetiva página de detalhes da instância.
Substitua o valor de
{{your_connection_string}}
(na variável$host
) pela propriedade Nome da associação da instância.Guarde o ficheiro.
No diretório
phpMyAdmin
, crie o ficheiro.touch php.ini
Edite o ficheiro e adicione a seguinte linha:
Guarde o ficheiro.
Verifique se existem atualizações para os componentes do
gcloud
.gcloud components update
Implemente a aplicação executando o seguinte comando a partir do diretório
phpMyAdmin
onde se encontra o ficheiroapp.yaml
:gcloud app deploy
Este comando implementa a app no serviço
phpMyAdmin
, conforme especificado no ficheiroapp.yaml
. A implementação num serviço separado ajuda a garantir que o phpMyAdmin é executado no mesmo centro de dados que a sua aplicação principal, o que melhora o desempenho. Para saber como implementar a sua app a partir da linha de comandos, consulte o artigo Implementar uma app PHP.No navegador de Internet, introduza o URL do phpMyAdmin para abrir a página de boas-vindas, alterando o URL para usar o ID da sua app.
https://phpmyadmin-dot-[YOUR_APP_ID].appspot.com
Em Nome de utilizador, introduza root.
Introduza a palavra-passe de administrador que indicou quando configurou a conta de administrador.
Clique em Ir.
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
- In the Google Cloud console, go to the Instances page.
- Click the name of the SQL instance you that want to delete.
- To delete the instance, click Delete, and then follow the instructions.
- Saiba mais sobre o phpMyAdmin.
- Explore arquiteturas de referência, diagramas e práticas recomendadas sobre o Google Cloud. Consulte o nosso Centro de arquitetura na nuvem.
Transfira o código-fonte do phpMyAdmin
Vai implementar o phpMyAdmin como um serviço da sua aplicação do App Engine, pelo que tem de transferir o código-fonte do phpMyAdmin. Siga estes passos:
Prepare os ficheiros para a implementação
A implementação do phpMyAdmin requer a criação de três ficheiros: app.yaml
, que
contém as informações de configuração do App Engine; config.inc.php
, que contém as informações de configuração do phpMyAdmin; e php.ini
, que contém a configuração específica da aplicação para PHP.
Criar app.yaml
O ficheiro de configuração do App Engine especifica a correspondência entre os caminhos de URL e os controladores de pedidos e os ficheiros estáticos. Também contém informações sobre o código da aplicação, como o ID da aplicação e o identificador da versão mais recente. Siga estes passos para criar o ficheiro:
Criar config.inc.php
Siga estes passos para criar o ficheiro de configuração do phpMyAdmin.
Criar php.ini
No respetivo código, o phpMyAdmin usa funções que estão desativadas por predefinição no App Engine.
Siga estes passos para adicionar um ficheiro php.ini
para que o App Engine
ative novamente as funções:
Implemente a aplicação
Use os seguintes comandos para implementar a sua aplicação no App Engine.
Inicie sessão no phpMyAdmin
Já pode iniciar sessão no phpMyAdmin.
À medida que desenvolve a sua app do App Engine, lembre-se de proteger com palavra-passe todas as contas de utilizador que criar para aceder a bases de dados no Cloud SQL.
Resolver problemas
O App Engine usa o proxy Auth do Cloud SQL para ligar a instâncias do Cloud SQL de segunda geração. Para mais informações sobre o funcionamento do proxy Auth do Cloud SQL, consulte o artigo Acerca do proxy Auth do Cloud SQL.
Os registos do App Engine na Google Cloud consola podem fornecer informações sobre erros do App Engine.
Limpar
Depois de concluir o tutorial, pode limpar os recursos que criou para que deixem de usar a quota e incorrer em custos. As secções seguintes descrevem como eliminar ou desativar estes recursos.
Elimine o projeto
A forma mais fácil de eliminar a faturação é eliminar o projeto que criou para o tutorial.
Para eliminar o projeto:
Elimine instâncias
Para eliminar uma instância do Cloud SQL: