2016-05-27 4 views
0

Я использую MariaDB 10.1 64x и испытываю ошибку с движком FederatedX. Во-первых, я создаю сервер:«Ошибка в удаленной системе: 0» при использовании FederatedX на MariaDB

CREATE SERVER AAA_fed 
Foreign data Wrapper mysql_1 
OPTIONS (
    User 'user1', 
    password 'password', 
    host 'x.x.x.x', 
    Port 3306, 
    database 'AAA' 
    ); 

, а затем создать федеративное таблицу, используя соединение с сервером.

CREATE TABLE table1 
ENGINE = FEDERATED 
CONNECTION='AAA_fed'; 

таблица создана успешно, но при выборе данных из этого, ответ об ошибке:

Error Code: 1296. Got error 10000 'Error on remote system: 0: ' from FEDERATED

Кто-нибудь знает решение этой проблемы? Я продолжаю искать, но не могу найти ответ. Спасибо.

ответ

0

WRAPPER должен быть признанным протоколом подключения.

Пример:

MariaDB [(none)]> SELECT VERSION(); 
+--------------------------+ 
| VERSION()    | 
+--------------------------+ 
| 10.1.14-MariaDB-1~xenial | -- 64 bit 
+--------------------------+ 
1 row in set (0.00 sec) 

MariaDB [(none)]> DROP DATABASE IF EXISTS `BBB`; 
Query OK, 0 rows affected (0.00 sec) 

MariaDB [(none)]> DROP DATABASE IF EXISTS `AAA`; 
Query OK, 1 row affected (0.00 sec) 

MariaDB [(none)]> CREATE DATABASE IF NOT EXISTS `AAA`; 
Query OK, 1 row affected (0.00 sec) 

MariaDB [(none)]> CREATE DATABASE IF NOT EXISTS `BBB`; 
Query OK, 1 row affected (0.00 sec) 

MariaDB [(none)]> CREATE TABLE IF NOT EXISTS `AAA`.`table1` (
    -> `id` int(20) NOT NULL, 
    -> `name` varchar(64) NOT NULL default '' 
    ->) ENGINE='InnoDB'; 
Query OK, 0 rows affected (0.00 sec) 

MariaDB [(none)]> DROP SERVER IF EXISTS `AAA_fed`; 
Query OK, 1 row affected (0.00 sec) 

MariaDB [(none)]> CREATE SERVER IF NOT EXISTS `AAA_fed` 
    -> FOREIGN DATA WRAPPER `mysql_1` -- <-- Unsupported 
    -> OPTIONS (
    -> HOST 'x.x.x.x', 
    -> DATABASE 'AAA', 
    -> USER 'user1', 
    -> PASSWORD 'password', 
    -> PORT 3306, 
    -> SOCKET '/path/to/mysqld.sock', 
    -> OWNER 'user1' 
    ->); 
Query OK, 0 rows affected (0.00 sec) 

MariaDB [(none)]> CREATE TABLE IF NOT EXISTS `BBB`.`table1` 
    -> ENGINE=FEDERATED CONNECTION='AAA_fed'; 
Query OK, 0 rows affected (0.00 sec) 

MariaDB [(none)]> SELECT `id`, `name` FROM `BBB`.`table1`; 
ERROR 1296 (HY000): Got error 10000 'Error on remote system: 0: ' from FEDERATED 

MariaDB [(none)]> DROP TABLE IF EXISTS `BBB`.`table1`; 
Query OK, 0 rows affected (0.00 sec) 

MariaDB [(none)]> DROP SERVER IF EXISTS `AAA_fed`; 
Query OK, 1 row affected (0.00 sec) 

MariaDB [(none)]> CREATE SERVER IF NOT EXISTS `AAA_fed` 
    -> FOREIGN DATA WRAPPER `mysql` -- <-- Supported 
    -> OPTIONS (
    -> HOST 'x.x.x.x', 
    -> DATABASE 'AAA', 
    -> USER 'user1', 
    -> PASSWORD 'password', 
    -> PORT 3306, 
    -> SOCKET '/path/to/mysqld.sock', 
    -> OWNER 'user1' 
    ->); 
Query OK, 0 rows affected (0.00 sec) 

MariaDB [(none)]> CREATE TABLE IF NOT EXISTS `BBB`.`table1` 
    -> ENGINE=FEDERATED CONNECTION='AAA_fed'; 
Query OK, 0 rows affected (0.00 sec) 

MariaDB [(none)]> SELECT `id`, `name` FROM `BBB`.`table1`; 
Empty set (0.00 sec) 
+0

Спасибо wchiquito, это действительно помогает! Моя проблема решена –