CREATE SERVER
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 | +-------+------+----------------------------------------------------------------+