CREATE SERVER

You are viewing an old version of this article. View the current version here.

Sintaxe

CREATE [OR REPLACE] SERVER [IF NOT EXISTS] server_name
    FOREIGN DATA WRAPPER wrapper_name
    OPTIONS (option [, option] ...)

option:
  { HOST character-literal
  | DATABASE character-literal
  | USER character-literal
  | PASSWORD character-literal
  | SOCKET character-literal
  | OWNER character-literal
  | PORT numeric-literal }

Descrição

Esta istrução cria a definição de um servidor para usar com o mecanismo de armazenamento FEDERADO. A instrução CREATE SERVER cria uma nova linha dentro da tabela no servidor dentro do banco de dados mysql. Esta instrução requer o privilégio SUPER.

O nome do servidor (server_name), deveria ser uma referência única ao servidor. As definições são globais dentro do escopo do servidor, não é possível restringir a definição do servidor a um banco de dados específico. server_name tem um comprimento máximo de 65 caracteres (nomes com mais de 64 caracteres são truncados silenciosamente), e não é sensível a maiúsculas e minúsculas. Você pode especificar o nome como um string entre aspas.

O wrapper_name deveria ser mysql, e pode ficar entre aspas simples. Outros valores para wrapper_name não são atualmente suportados.

Para cada opção você deve especificar um caracter literal ou um numérico literal. Caracteres literais são UTF-8, suportam um comprimento máximo de 64 caracteres e têm por padrão um string vazio. Literais de String são truncados silenciosamente para 64 caracteres. Literais numéricos devem ser um número entre 0 e 9999, o valor padrão é 0.

  • Nota*: Note que a opção OWNER não é aplicada atualmente, e não tem efeito sobre a propriedade ou a operação da conexão do servidor que é criada.

A instrução CREATE_SERVER cria uma entrada na tabela mysql.server que pode ser usada posteriormente com a instrução CREATE TABLE ao criar uma tabela FEDERADA. As opções que você especifica serão usadas para preencher as colunas na tabela mysql.server. As colunas da tabela são Server_name, Host, Db, Username, Password, Port and Socket.

Exemplos

CREATE SERVER s
FOREIGN DATA WRAPPER mysql
OPTIONS (USER 'Remote', HOST '192.168.1.106', DATABASE 'test');

OR REPLACE e IF NOT EXISTS:

CREATE SERVER s 
FOREIGN DATA WRAPPER mysql 
OPTIONS (USER 'Remote', HOST '192.168.1.106', DATABASE 'test');
ERROR 1476 (HY000): The foreign server, s, you are trying to create already exists

CREATE OR REPLACE SERVER s 
FOREIGN DATA WRAPPER mysql 
OPTIONS (USER 'Remote', HOST '192.168.1.106', DATABASE 'test');
Query OK, 0 rows affected (0.00 sec)

CREATE SERVER IF NOT EXISTS s 
FOREIGN DATA WRAPPER mysql 
OPTIONS (USER 'Remote', HOST '192.168.1.106', DATABASE 'test');
Query OK, 0 rows affected, 1 warning (0.00 sec)

SHOW WARNINGS;
+-------+------+----------------------------------------------------------------+
| Level | Code | Message                                                        |
+-------+------+----------------------------------------------------------------+
| Note  | 1476 | The foreign server, s, you are trying to create already exists |
+-------+------+----------------------------------------------------------------+

Comments

Comments loading...
Content reproduced on this site is the property of its respective owners, and this content is not reviewed in advance by MariaDB. The views, information and opinions expressed by this content do not necessarily represent those of MariaDB or any other party.