久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

怎么通過(guò)mysql的federated插件實(shí)現(xiàn)dblink功能

共計(jì) 7593 個(gè)字符,預(yù)計(jì)需要花費(fèi) 19 分鐘才能閱讀完成。

這篇文章主要講解了“怎么通過(guò) mysql 的 federated 插件實(shí)現(xiàn) dblink 功能”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著丸趣 TV 小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“怎么通過(guò) mysql 的 federated 插件實(shí)現(xiàn) dblink 功能”吧!

db1:172.26.99.157 3306(源庫(kù))

db2:172.26.99.157 3310(通過(guò) dblink 調(diào)用源庫(kù))

[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

重啟數(shù)據(jù)庫(kù),

# 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 中添加參數(shù):

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:root123@172.26.99.157: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)

除了直接使用連接串的方法,還可以先創(chuàng)建 server,然后建表時(shí)調(diào)用 server:

還可以使用 server 的方式將連接串存儲(chǔ)起來(lái)。

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

遠(yuǎn)程服務(wù)器中包括表定義和數(shù)據(jù),可以是 myisam、innodb 或其他引擎;

本地服務(wù)器中只包括相同表結(jié)構(gòu)的 federated 引擎表和遠(yuǎn)程服務(wù)器的連接串信息。增刪改查操作都需要發(fā)到遠(yuǎn)程服務(wù)器中。

數(shù)據(jù)交互如下:

1. 存儲(chǔ)引擎查看 FEDERATED 表?yè)碛械拿恳涣?,并?gòu)造引用遠(yuǎn)程表的適當(dāng) SQL 語(yǔ)句

2. 語(yǔ)句使用 MySQL 客戶端 API 發(fā)送到遠(yuǎn)程服務(wù)器

3. 遠(yuǎn)程服務(wù)器處理語(yǔ)句,本地服務(wù)器檢索語(yǔ)句產(chǎn)生的所有結(jié)果 (受影響的行數(shù)或結(jié)果集)

4. 如果語(yǔ)句生成了結(jié)果集,則每一列都轉(zhuǎn)換為 FEDERATED 引擎所期望的內(nèi)部存儲(chǔ)引擎格式,并可用于向發(fā)出原始語(yǔ)句的客戶端顯示結(jié)果。

限制:

遠(yuǎn)端服務(wù)器必須是 mysql

在調(diào)用前,F(xiàn)EDERATED 指向的遠(yuǎn)端表必須存在

可以指向 FEDERATED 引擎表,注意不要循環(huán)嵌套

FEDERATED 引擎無(wú)法使用索引,如果結(jié)果集很大,數(shù)據(jù)存放在內(nèi)存中,可能使用大量 swap 甚至 hang 住。

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

能接受 insert …… on deplicate key update, 但不生效,有重復(fù)值仍然會(huì)報(bào)錯(cuò)

不支持事務(wù)

可以進(jìn)行批量插入操作,但注意大小不要超過(guò)服務(wù)器建能傳輸?shù)淖畲蟀笮?

FEDERATED 引擎表無(wú)法獲知遠(yuǎn)程服務(wù)器上表的變化

使用連接串時(shí),密碼不能包括 @符號(hào)

INSERT_id 和時(shí)間戳選項(xiàng)不會(huì)傳播到 data provider

針對(duì) FEDERATED 表發(fā)出的任何 DROP TABLE 語(yǔ)句只刪除本地表,而不刪除遠(yuǎn)程表

不使用查詢緩存

不支持用戶定義的分區(qū)

感謝各位的閱讀,以上就是“怎么通過(guò) mysql 的 federated 插件實(shí)現(xiàn) dblink 功能”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)怎么通過(guò) mysql 的 federated 插件實(shí)現(xiàn) dblink 功能這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是丸趣 TV,丸趣 TV 小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-07-28發(fā)表,共計(jì)7593字。
轉(zhuǎn)載說(shuō)明:除特殊說(shuō)明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請(qǐng)注明出處。
評(píng)論(沒(méi)有評(píng)論)
主站蜘蛛池模板: 石泉县| 潞城市| 连平县| 江西省| 宜城市| 白沙| 观塘区| 永昌县| 广南县| 汝南县| 前郭尔| 高州市| 德令哈市| 涿鹿县| 昌乐县| 边坝县| 玉环县| 汶川县| 富川| 昔阳县| 利川市| 时尚| 开鲁县| 东平县| 荆州市| 丹巴县| 大方县| 乐昌市| 马山县| 吉水县| 新乡市| 华安县| 福州市| 塘沽区| 玛纳斯县| 宜兰县| 青神县| 南安市| 于田县| 福建省| 浪卡子县|