`

MYSQL 链接远程的链接表(类似ORACLE的DBLINK)

阅读更多

MYSQL 链接远程的链接表(类似ORACLE的DBLINK)


远程表:
CREATE TABLE IF NOTEXISTS `category`
(   `id` int(11) NOTNULLAUTO_INCREMENT,   `category_id` int(11) NOTNULL,   `namevarchar(20) NOTNULL,   PRIMARYKEY(`id`) )
ENGINE=MYSAIM DEFAULTCHARSET=utf8;
 

 

本地建立链接表(映射10.10.10.133 app库的category表)的时候:

CREATE TABLE IF NOT EXISTS `remotecategory` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `category_id` int(11) NOT NULL,
  `name` varchar(20) NOT NULL,
   PRIMARY KEY (`id`)
)ENGINE=FEDERATED DEFAULT CHARSET=utf8  
CONNECTION='mysql://user:passwod@10.10.10.133:3306/app/category'; 注:表的结构一模一样,就是引擎不同,看红字FEDERATED


 
具体配置方法如下:
  1.查看是否安装了federated引擎
  输入命令:show engines;
  结果如下:
  

 

  从中可以看出federated引擎已经开启.(默认未开启)
  2.开启federated引擎
  windows下在my.ini中(或者my.cnf or my.conf or my.ini)找到[mysqld] 加入federated,即可开启,如:
[mysqld] 
federated 

重启mysql
  linux中,需要编译时加入选项,再在my.ini中加入federated,方可开启.
3.本地mysql数据库需要开启federated引擎,所连接的远程mysql库不需要开启
4.在建本地的映射表之前,应先确认引擎是否已启动。若未启动,在开启引擎后需要重建此表。
 

3.FEDERATED支持及不支持的如下:  

·远程服务器必须是一个MySQL服务器. FEDERATED对其它数据库引擎的支持可能会在将来被添加.  

·FEDERATED表指向的远程表在通过FEDERATED表访问它之前必须存在.  

·一个FEDERATED表指向另一个FEDERATED表是可能的, 但是必须小心不要创建一个循环.  

·没有对事务的支持.  

·如果远程表已经改变, 对FEDERATED引擎而言是没有办法知道的. 这个的原因是因为这个表必须象数据文件一样工作,

除了数据库其它任何都不会被写入. 如果有任何对远程数据库的改变, 本地表中数据的完整性可能会被破坏.  

·FEDERATED存储引擎支持SELECT,INSERT,UPDATE,DELETE和索引. 它不支持ALTER TABLE,DROP TABLE或任何

其它的数据定义语言语句. 当前的实现不使用预先准备好的语句.  

·执行使用SELECT,INSERT,UPDATE和DELETE, 但不用HANDLER.  

·FEDERATED表不能对查询缓存不起作用.  

这些限制中的一些在FEDERATED处理机的将来版本可能被消除. 

  • 大小: 79.1 KB
分享到:
评论

相关推荐

    oracle通过dblink链接 mysql和mssql例子

    通过DBLink,用户可以查询远程数据库中的表,并执行远程数据库上的存储过程。但需要注意的是,DBLink通常是单向的连接。 创建DBLink之前,必须保证以下几点: 1. 本地数据库到远程数据库之间的网络连接正常,可以...

    Oracle-不同数据库DBLINK导数据使用说明

    数据库链接(DBLINK)允许一个Oracle数据库实例连接到另一个远程数据库实例,从而实现数据的透明访问。创建DBLINK的基本语法如下: ```sql CREATE DATABASE LINK db_link_name CONNECT TO remote_user IDENTIFIED ...

    实现ORACLE跨库访问 DBLINK

    在这个查询中,`@dcmdb`就是我们刚创建的DBLINK,它告诉Oracle要通过这个链接去查询`tabname`表。 需要注意的是,DBLINK的安全性和性能优化也是重要的考虑因素。创建DBLINK时应确保远程用户的权限适中,避免不必要...

    Oracle10g通过DBLink访问MySQL示例

    在 Oracle SQL 查询中,你可以创建一个数据库链接(DBLink),然后像操作本地表一样操作远程 MySQL 表。 例如,创建 DBLink 的 SQL 语句可能如下: ```sql CREATE DATABASE LINK mysql_link CONNECT TO mysql_user ...

    db link的查看创建与删除

    这通常用于开发环境中,以便快速了解当前用户所拥有的远程数据库链接。 3. **ALL_DB_LINKS 视图**: - 对于那些拥有更高权限的用户(如 DBA),可以使用 `SELECT * FROM all_db_links;` 来查看数据库中所有用户所...

    Oracle19C RAC通过gateways连接SQL server数据库

    7. 创建Oracle数据库链接(dblink),如`create public database link ecology connect to "sa" identified by "******" using 'dg4msql';`,这里的`ecology`是dblink的名称,`sa`是SQL Server数据库的用户名,`****...

    CSDN Oracle 版精华帖荟萃

    9. dblink同步远程带blob字段的表:dblink是Oracle提供的一种数据库链接技术,用于实现不同Oracle数据库间的连接。同步带blob字段的表涉及到特殊的数据类型处理。 10. 剔重SQL的讨论:剔除重复数据的SQL查询在数据...

    CSDN+Oracle版精华帖荟萃

    3. Oracle远程访问MySQL:在实际应用中,有时候需要从Oracle数据库访问MySQL数据库中的数据。这通常通过建立数据库链接(database link)实现,需要配置网络连接,并确保Oracle能够访问到MySQL的实例。 4. 分布式...

    Oracle创建Database Link的两种方式详解

    Oracle数据库的Database Link是连接不同数据库之间的一种机制,它允许用户在本地数据库上执行查询,同时访问远程数据库的数据,仿佛这些数据就在本地一样。Database Link是Oracle数据库提供的一种分布式数据库功能,...

    DBLink-ODBC-开源

    DBLink-ODBC 的加入进一步扩展了这一功能,使得 PostgreSQL 可以利用 ODBC 驱动连接到其他非 PostgreSQL 数据源,例如 SQL Server、Oracle、MySQL 等,这样就可以在 PostgreSQL 中直接操作和查询这些外部数据库的...

    数据库设计开发规范-阿里.pdf

    - **避免多数据库间通过DBLINK访问**: 在应用层面上,多个数据库之间的交互不应通过数据库链接(DBLINK)进行,这样可以降低系统的复杂性和提高安全性。 - **不使用触发器**: 触发器可能会导致不可预测的行为或性能...

    猛犸代码助手3.9

    6. **DbLink.dll**:数据库连接组件,用于建立和管理与不同数据库系统的连接,可能包括除MySQL之外的其他数据库系统,如Oracle、SQL Server等。 7. **UserMould.dll**:用户模版库,很可能包含了用户可以自定义的...

    企业门户网站.zip企业门户网站.zip

    - `Dblink.class`:链接管理,用于管理网站内部或外部的链接资源。 - `Dbquestion.class`:问题库,可能包含常见问题及答案的存储和查询。 - `Dbnew.class`:新闻管理,负责发布和管理企业新闻、公告等内容。 3....

Global site tag (gtag.js) - Google Analytics