在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

怎么通过mysql的federated插件实现dblink功能

125次阅读
没有评论

共计 7593 个字符,预计需要花费 19 分钟才能阅读完成。

这篇文章主要讲解了“怎么通过 mysql 的 federated 插件实现 dblink 功能”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着丸趣 TV 小编的思路慢慢深入,一起来研究和学习“怎么通过 mysql 的 federated 插件实现 dblink 功能”吧!

db1:172.26.99.157 3306(源库)

db2:172.26.99.157 3310(通过 dblink 调用源库)

[root@node7 lepus]# mm

mysql: [Warning] Using a password on the command line interface can be insecure.

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 357

Server version: 5.7.29-log MySQL Community Server (GPL)

Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type help; or \h for help. Type \c to clear the current input statement.

mysql show engines;

+——————–+———+—————————————————————-+————–+——+————+

| Engine             | Support | Comment                                                        | Transactions | XA   | Savepoints |

+——————–+———+—————————————————————-+————–+——+————+

| InnoDB             | DEFAULT | Supports transactions, row-level locking, and foreign keys     | YES          | YES  | YES        |

| MRG_MYISAM         | YES     | Collection of identical MyISAM tables                          | NO           | NO   | NO         |

| CSV                | YES     | CSV storage engine                                             | NO           | NO   | NO         |

| BLACKHOLE          | YES     | /dev/null storage engine (anything you write to it disappears) | NO           | NO   | NO         |

| MEMORY             | YES     | Hash based, stored in memory, useful for temporary tables      | NO           | NO   | NO         |

| MyISAM             | YES     | MyISAM storage engine                                          | NO           | NO   | NO         |

| ARCHIVE            | YES     | Archive storage engine                                         | NO           | NO   | NO         |

| PERFORMANCE_SCHEMA | YES     | Performance Schema                                             | NO           | NO   | NO         |

| FEDERATED          | NO      | Federated MySQL storage engine                                 | NULL         | NULL | NULL       |

+——————–+———+—————————————————————-+————–+——+————+

9 rows in set (0.00 sec)

mysql install plugin federated soname ha_federated.so  

ERROR 1125 (HY000): Function federated already exists

mysql exit

Bye

重启数据库,

# mysqladmin -uroot -P3310 -p -h 127.0.0.1 shutdown

# mysqld –defaults-file=/mysql/data/my.cnf –user=mysql –datadir=/mysql/data/3310  –basedir=/mysql/app/mysql –pid-file=/mysql/data/mysql3310.pid –socket=/mysql/data/mysql3310.sock –port=3310  

在 my.cnf 中添加参数:

federated

mysql show engines;

+——————–+———+—————————————————————-+————–+——+————+

| Engine             | Support | Comment                                                        | Transactions | XA   | Savepoints |

+——————–+———+—————————————————————-+————–+——+————+

| InnoDB             | DEFAULT | Supports transactions, row-level locking, and foreign keys     | YES          | YES  | YES        |

| MRG_MYISAM         | YES     | Collection of identical MyISAM tables                          | NO           | NO   | NO         |

| CSV                | YES     | CSV storage engine                                             | NO           | NO   | NO         |

| BLACKHOLE          | YES     | /dev/null storage engine (anything you write to it disappears) | NO           | NO   | NO         |

| MEMORY             | YES     | Hash based, stored in memory, useful for temporary tables      | NO           | NO   | NO         |

| MyISAM             | YES     | MyISAM storage engine                                          | NO           | NO   | NO         |

| ARCHIVE            | YES     | Archive storage engine                                         | NO           | NO   | NO         |

| PERFORMANCE_SCHEMA | YES     | Performance Schema                                             | NO           | NO   | NO         |

| FEDERATED          | YES     | Federated MySQL storage engine                                 | NO           | NO   | NO         |

+——————–+———+—————————————————————-+————–+——+————+

9 rows in set (0.00 sec)

@3306:

# mysql -uroot -P3306 -h227.0.0.1 -p

mysql create database testdb;

mysql use testdb;

mysql CREATE TABLE `options` (

    –    `name` varchar(50) DEFAULT NULL,

    –    `value` varchar(255) DEFAULT NULL,

    –    `description` varchar(100) DEFAULT NULL,

    –    KEY `idx_name` (`name`) USING BTREE

    – ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

@33310:

mysql use tianlei;

mysql CREATE TABLE `options` (

    –    `name` varchar(50) DEFAULT NULL,

    –    `value` varchar(255) DEFAULT NULL,

    –    `description` varchar(100) DEFAULT NULL,

    –    KEY `idx_name` (`name`) USING BTREE

    – ) ENGINE=FEDERATED DEFAULT CHARSET=utf8

    – CONNECTION= mysql://root:[email protected]:3306/testdb/options

Query OK, 0 rows affected (0.01 sec)

mysql select * from options;

Empty set (0.01 sec)

@3306:

mysql  

mysql insert into options (name,value) values (log , Y

Query OK, 1 row affected (0.00 sec)

mysql select * from options;

+——+——-+————-+

| name | value | description |

+——+——-+————-+

| log  | Y     | NULL        |

+——+——-+————-+

1 row in set (0.00 sec)

@3310:

mysql select * from options;

+——+——-+————-+

| name | value | description |

+——+——-+————-+

| log  | Y     | NULL        |

+——+——-+————-+

1 row in set (0.00 sec)

mysql insert into options (name,value) values (sql_mode , N

Query OK, 1 row affected (0.01 sec)

mysql select * from options;

+———-+——-+————-+

| name     | value | description |

+———-+——-+————-+

| log      | Y     | NULL        |

| sql_mode | N     | NULL        |

+———-+——-+————-+

2 rows in set (0.00 sec)

mysql update options set description= abc where name= log

Query OK, 1 row affected (0.01 sec)

Rows matched: 1  Changed: 1  Warnings: 0

mysql delete from options where name = sql_mode

Query OK, 1 row affected (0.01 sec)

除了直接使用连接串的方法,还可以先创建 server,然后建表时调用 server:

还可以使用 server 的方式将连接串存储起来。

CREATE SERVER dblink

FOREIGN DATA WRAPPER mysql

OPTIONS (USER lepus , HOST 172.26.99.157 , PORT 3306, DATABASE testdb

CREATE TABLE `options2` (

  `name` varchar(50) DEFAULT NULL,

  `value` varchar(255) DEFAULT NULL,

  `description` varchar(100) DEFAULT NULL,

  KEY `idx_name` (`name`) USING BTREE

) ENGINE=FEDERATED

DEFAULT CHARSET=utf8

CONNECTION= dblink/options

mysql select * from options2;

ERROR 1429 (HY000): Unable to connect to foreign data source: Access denied for user lepus @ 172.26.99.157 (using password: 

mysql drop server dblink;

Query OK, 1 row affected (0.00 sec)

CREATE SERVER dblink

FOREIGN DATA WRAPPER mysql

OPTIONS (USER lepus , HOST 172.26.99.157 , PORT 3306, DATABASE testdb ,PASSWORD lepus

mysql CREATE SERVER dblink

    – FOREIGN DATA WRAPPER mysql

    – OPTIONS (USER lepus , HOST 172.26.99.157 , PORT 3306, DATABASE testdb ,PASSWORD lepus

Query OK, 1 row affected (0.01 sec)

mysql select * from options2;

+——+——-+————-+

| name | value | description |

+——+——-+————-+

| log  | Y     | abc         |

+——+——-+————-+

1 row in set (0.01 sec)

mysql show create table options2\G

*************************** 1. row ***************************

       Table: options2

Create Table: CREATE TABLE `options2` (

  `name` varchar(50) DEFAULT NULL,

  `value` varchar(255) DEFAULT NULL,

  `description` varchar(100) DEFAULT NULL,

  KEY `idx_name` (`name`) USING BTREE

) ENGINE=FEDERATED DEFAULT CHARSET=utf8 CONNECTION= dblink/options

1 row in set (0.00 sec)

在 mysql 5.7 官方文档中有 federated 引擎的具体介绍,地址为:

https://dev.mysql.com/doc/refman/5.7/en/federated-storage-engine.html

远程服务器中包括表定义和数据,可以是 myisam、innodb 或其他引擎;

本地服务器中只包括相同表结构的 federated 引擎表和远程服务器的连接串信息。增删改查操作都需要发到远程服务器中。

数据交互如下:

1. 存储引擎查看 FEDERATED 表拥有的每一列,并构造引用远程表的适当 SQL 语句

2. 语句使用 MySQL 客户端 API 发送到远程服务器

3. 远程服务器处理语句,本地服务器检索语句产生的所有结果 (受影响的行数或结果集)

4. 如果语句生成了结果集,则每一列都转换为 FEDERATED 引擎所期望的内部存储引擎格式,并可用于向发出原始语句的客户端显示结果。

限制:

远端服务器必须是 mysql

在调用前,FEDERATED 指向的远端表必须存在

可以指向 FEDERATED 引擎表,注意不要循环嵌套

FEDERATED 引擎无法使用索引,如果结果集很大,数据存放在内存中,可能使用大量 swap 甚至 hang 住。

FEDERATED 引擎表支持 insert、update、delete、select、truncate table 操作和索引操作,但不支持 alter table 操作

能接受 insert …… on deplicate key update, 但不生效,有重复值仍然会报错

不支持事务

可以进行批量插入操作,但注意大小不要超过服务器建能传输的最大包大小

FEDERATED 引擎表无法获知远程服务器上表的变化

使用连接串时,密码不能包括 @符号

INSERT_id 和时间戳选项不会传播到 data provider

针对 FEDERATED 表发出的任何 DROP TABLE 语句只删除本地表,而不删除远程表

不使用查询缓存

不支持用户定义的分区

感谢各位的阅读,以上就是“怎么通过 mysql 的 federated 插件实现 dblink 功能”的内容了,经过本文的学习后,相信大家对怎么通过 mysql 的 federated 插件实现 dblink 功能这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是丸趣 TV,丸趣 TV 小编将为大家推送更多相关知识点的文章,欢迎关注!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-28发表,共计7593字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 欧洲vat一区二区三区 | 韩国本免费一级毛片免费 | 亚洲精品日本一区二区在线 | 9色网站 | 欧美一区二区三区在线观看 | 99久久这里只精品麻豆 | 亚洲看片网站 | 不卡av中文字幕手机看 | 国产精品美女久久久久av超清 | 国产女人高潮毛片 | 中国一级特黄真人毛片 | 国产精品久久免费 | 99免费精品 | avwww在线| 精品久久久久久久免费人妻 | 日本爽快片100色毛片 | 成人性生交片无码免费看 | 精品国产一区二区三区四区不 | xx欧美老妇| 久久精品黄色 | 免费a级毛片无码 | 国产喷水1区2区3区咪咪爱av | 国产成人精品亚洲一区 | 国产成人性色视频 | 久久爱www.| 天天操天天操天天操 | 日本人 视频 - 18jizz | 人人妻人人澡人人爽人人dvd | 香蕉视频三级 | 亚洲成a v人片在线观看 | 四虎精品久久久久影院 | 久久综合九色综合97婷婷女人 | 国产激情一级毛片久久久 | 国产视频久久 | 在线国产一区二区三区 | 亚洲精品国偷拍自产在线观看蜜桃 | 国产精品美女久久久久网站 | 精品国免费一区二区三区 | 国产网友自拍 | 精品无码久久久久国产 | 国产一级伦理片 |