Esta página contém informações sobre a criação, a listagem e a eliminação de bases de dados do SQL Server numa instância do Cloud SQL.
Uma instância recém-criada tem uma base de dados sqlserver.
Para obter informações sobre como definir um valor predefinido para o tipo de colação usado para as bases de dados numa instância, consulte o artigo Criar instâncias.
Antes de começar
Antes de concluir as tarefas nesta página, tem de ter:
- Criou uma instância do Cloud SQL. Para mais informações, consulte Criar instâncias.
Se planeia usar o cliente sqlcmd para criar ou gerir as suas bases de dados, tem de ter:
- Acesso configurado e ligação à instância com um cliente
sqlcmd.
Crie uma base de dados na instância do Cloud SQL
Consola
-
Na Google Cloud consola, aceda à página Instâncias do Cloud SQL.
- Para abrir a página Vista geral de uma instância, clique no nome da instância.
- Selecione Bases de dados no menu de navegação SQL.
- Clique em Criar base de dados.
- Na caixa de diálogo Nova base de dados, especifique o nome da base de dados.
- Clique em Criar.
gcloud
Para informações de referência, consulte gcloud
sql databases create.
Para obter informações sobre as regras de ordenação no SQL Server, consulte o artigo Regras de ordenação e apoio técnico do Unicode na documentação do SQL Server.
gcloud sql databases create DATABASE_NAME \ --instance=INSTANCE_NAME \ [--charset=CHARSET] \ [--collation=COLLATION]
Terraform
Para criar uma base de dados, use um recurso do Terraform.
Aplique as alterações
Para aplicar a configuração do Terraform num Google Cloud projeto, conclua os passos nas secções seguintes.
Prepare o Cloud Shell
- Inicie o Cloud Shell.
-
Defina o Google Cloud projeto predefinido onde quer aplicar as suas configurações do Terraform.
Só tem de executar este comando uma vez por projeto e pode executá-lo em qualquer diretório.
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
As variáveis de ambiente são substituídas se definir valores explícitos no ficheiro de configuração do Terraform.
Prepare o diretório
Cada ficheiro de configuração do Terraform tem de ter o seu próprio diretório (também denominado módulo raiz).
-
No Cloud Shell, crie um diretório e um novo ficheiro nesse diretório. O nome do ficheiro tem de ter a extensão
.tf, por exemplo,main.tf. Neste tutorial, o ficheiro é denominadomain.tf.mkdir DIRECTORY && cd DIRECTORY && touch main.tf
-
Se estiver a seguir um tutorial, pode copiar o código de exemplo em cada secção ou passo.
Copie o exemplo de código para o
main.tfcriado recentemente.Opcionalmente, copie o código do GitHub. Isto é recomendado quando o fragmento do Terraform faz parte de uma solução completa.
- Reveja e modifique os parâmetros de exemplo para aplicar ao seu ambiente.
- Guarde as alterações.
-
Inicialize o Terraform. Só tem de fazer isto uma vez por diretório.
terraform init
Opcionalmente, para usar a versão mais recente do fornecedor Google, inclua a opção
-upgrade:terraform init -upgrade
Aplique as alterações
-
Reveja a configuração e verifique se os recursos que o Terraform vai criar ou
atualizar correspondem às suas expetativas:
terraform plan
Faça correções à configuração conforme necessário.
-
Aplique a configuração do Terraform executando o seguinte comando e introduzindo
yesno comando:terraform apply
Aguarde até que o Terraform apresente a mensagem "Apply complete!" (Aplicação concluída!).
- Abra o seu Google Cloud projeto para ver os resultados. Na Google Cloud consola, navegue para os seus recursos na IU para se certificar de que o Terraform os criou ou atualizou.
Eliminar as alterações
Para eliminar as alterações, faça o seguinte:
- Para desativar a proteção contra eliminação, no ficheiro de configuração do Terraform, defina o argumento
deletion_protectioncomofalse.deletion_protection = "false"
- Aplique a configuração do Terraform atualizada executando o seguinte comando e
introduzindo
yesno comando:terraform apply
-
Remova os recursos aplicados anteriormente com a sua configuração do Terraform executando o seguinte comando e introduzindo
yesno comando:terraform destroy
REST v1
O pedido seguinte usa o método databases:insert para criar uma nova base de dados na instância especificada.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- project-id: o ID do projeto
- instance-id: o ID da instância
- database-name: o nome de uma base de dados na instância do Cloud SQL
Método HTTP e URL:
POST https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/databases
Corpo JSON do pedido:
{
"project": "project-id",
"instance": "instance-id",
"name": "database-name"
}
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
REST v1beta4
O pedido seguinte usa o método databases:insert para criar uma nova base de dados na instância especificada.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- project-id: o ID do projeto
- instance-id: o ID da instância
- database-name: o nome de uma base de dados na instância do Cloud SQL
Método HTTP e URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/databases
Corpo JSON do pedido:
{
"project": "project-id",
"instance": "instance-id",
"name": "database-name"
}
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
Apresente uma lista das suas bases de dados
Para listar todas as bases de dados numa instância:
Consola
-
Na Google Cloud consola, aceda à página Instâncias do Cloud SQL.
- Para abrir a página Vista geral de uma instância, clique no nome da instância.
- Clique em Bases de dados no menu do lado esquerdo. A página Bases de dados apresenta uma lista das bases de dados, juntamente com o respetivo tipo de intercalação, conjunto de carateres e tipo de base de dados.
gcloud
Para informações de referência, consulte gcloud
sql databases list.
gcloud sql databases list \ --instance=INSTANCE_NAME
REST v1
O pedido seguinte usa o método databases:list para listar as bases de dados de uma instância.
Quando lista as bases de dados através da API, vê bases de dados de modelos adicionais e uma base de dados do sistema que não são apresentadas pela consola. Não pode eliminar nem gerir a base de dados do sistema.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- project-id: o ID do projeto
- instance-id: o ID da instância
Método HTTP e URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/databases
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
REST v1beta4
O pedido seguinte usa o método databases:list para listar as bases de dados de uma instância.
Quando lista as bases de dados através da API, vê bases de dados de modelos adicionais e uma base de dados do sistema que não são apresentadas pela consola. Não pode eliminar nem gerir a base de dados do sistema.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- project-id: o ID do projeto
- instance-id: o ID da instância
Método HTTP e URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/databases
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
Altere o proprietário de uma base de dados
Se quiser eliminar o início de sessão do utilizador associado a um proprietário da base de dados que já não esteja ativo, tem de atribuir primeiro um novo proprietário da base de dados.
Para adicionar um novo proprietário da base de dados, conclua o seguinte:
gcloud
- Associe à sua base de dados e crie duas contas de demonstração:
create login TEST_LOGIN with password='TEST_PASSWORD' create login REPORT_USER with password='REPORT_USER_PASSWORD' GRANT CREATE ANY DATABASE TO TEST_LOGIN AS [CustomerDbRootRole]
Faça as seguintes substituições:
- TEST_LOGIN: o nome da conta de teste, como
test-login. - TEST_PASSWORD: a palavra-passe da conta de teste.
- REPORT_USER: o nome de uma segunda conta de utilizador, como
report-user. Esta conta torna-se o novo proprietário da base de dados. - REPORT_USER_PASSWORD: a palavra-passe da segunda conta de utilizador.
- TEST_LOGIN: o nome da conta de teste, como
- Associe à sua base de dados através da conta de teste que acabou de criar. Em seguida,
crie uma base de dados de teste com o seguinte comando:
CREATE DATABASE TEST_DB
Faça as seguintes substituições:
- TEST_DB: o nome da base de dados de teste que quer criar, como
test-database - TEST_LOGIN: o nome da conta de teste, como
test-login.
O proprietário da base de dados é automaticamente definido para a conta de teste.
- TEST_DB: o nome da base de dados de teste que quer criar, como
- Estabeleça ligação à base de dados através do início de sessão do SQL Server. Em seguida, execute o seguinte comando
para tentar anular o início de sessão
TEST_LOGIN:drop login TEST_LOGIN
Substitua TEST_LOGIN pelo nome da conta de teste, como
test-login.A operação falha e é devolvido o seguinte erro:
- Associe-se à base de dados
TEST_DBcomo a contaREPORT_USERe conceda as autorizações da conta para corresponder ao proprietário existente.GRANT IMPERSONATE on LOGIN::REPORT_USER to TEST_LOGIN
- Associe-se à base de dados como conta de teste. Em seguida, execute o seguinte comando para autorizar a segunda conta como proprietário da base de dados:
ALTER AUTHORIZATION ON DATABASE::TEST_DB TO REPORT_USER
- Associe à base de dados como
REPORT_USERe remova todas as autorizações concedidas.REVOKE IMPERSONATE on LOGIN::REPORT_USER to TEST_LOGIN
- Estabeleça ligação à base de dados como a conta do SQL Server. Em seguida, execute o seguinte comando para eliminar o início de sessão do
TEST_LOGIN: Quando terminar, é devolvida a seguinte mensagem:DROP LOGIN TEST_LOGIN
DROP LOGIN for TEST_LOGIN by sqlserver(sqlserver) is successful.
Elimine uma base de dados
Para eliminar uma base de dados na instância do Cloud SQL:
Consola
-
Na Google Cloud consola, aceda à página Instâncias do Cloud SQL.
- Para abrir a página Vista geral de uma instância, clique no nome da instância.
- Clique em Bases de dados no menu do lado esquerdo.
- Na lista de bases de dados, encontre a base de dados que quer eliminar e clique no ícone de lixo.
- Na caixa de diálogo Eliminar base de dados, introduza o nome da base de dados e, de seguida, clique em Eliminar.
gcloud
Para informações de referência, consulte gcloud
sql databases delete.
gcloud sql databases delete DATABASE_NAME \ --instance=INSTANCE_NAME
REST v1
O pedido seguinte usa o método databases:delete para eliminar a base de dados especificada.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- project-id: o ID do projeto
- instance-id: o ID da instância
- database-name: o nome de uma base de dados na instância do Cloud SQL
Método HTTP e URL:
DELETE https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/databases/database-name
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
REST v1beta4
A seguinte solicitação usa o método databases:delete para eliminar a base de dados especificada.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- project-id: o ID do projeto
- instance-id: o ID da instância
- database-name: o nome de uma base de dados na instância do Cloud SQL
Método HTTP e URL:
DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/databases/database-name
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
O que se segue?
- Faça a gestão dos utilizadores da sua instância.
- Importe dados para a sua instância.
- Criar tabelas (motor de base de dados).
Experimente
Se está a usar o Google Cloud pela primeira vez, crie uma conta para avaliar o desempenho do Cloud SQL em cenários reais. Os novos clientes também recebem 300 USD em créditos gratuitos para executar, testar e implementar cargas de trabalho.
Experimente o Cloud SQL gratuitamente