最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL中使用FREDATED引擎實現(xiàn)跨數(shù)據庫服務器、跨實例訪問

 更新時間:2014年10月31日 09:54:58   作者:Leshami  
這篇文章主要介紹了MySQL中使用FREDATED引擎實現(xiàn)跨數(shù)據庫服務器、跨實例訪問,本文講解了FEDERATED存儲引擎的描述、安裝與啟用FEDERATED存儲引擎、準備遠程服務器環(huán)境等內容,需要的朋友可以參考下

跨數(shù)據庫服務器,跨實例訪問是比較常見的一種訪問方式,在Oracle中可以通過DB LINK的方式來實現(xiàn)。對于MySQL而言,有一個FEDERATED存儲引擎與之相對應。同樣也是通過創(chuàng)建一個鏈接方式的形式來訪問遠程服務器上的數(shù)據。本文簡要描述了FEDERATED存儲引擎,以及演示了基于FEDERATED存儲引擎跨實例訪問的示例。

1、FEDERATED存儲引擎的描述

  FEDERATED存儲引擎允許在不使用復制或集群技術的情況下實現(xiàn)遠程訪問數(shù)據庫
  創(chuàng)建基于FEDERATED存儲引擎表的時候,服務器在數(shù)據庫目錄僅創(chuàng)建一個表定義文件,即以表名開頭的.frm文件。

  FEDERATED存儲引擎表無任何數(shù)據存儲到本地,即沒有.myd文件
  對于遠程服務器上表的操作與本地表操作一樣,僅僅是數(shù)據位于遠程服務器
  基本流程如下:   

2、安裝與啟用FEDERATED存儲引擎

  源碼安裝MySQL時使用DWITH_FEDERATED_STORAGE_ENGINE來配置
  rpm安裝方式缺省情況下已安裝,只需要啟用該功能即可

3、準備遠程服務器環(huán)境

復制代碼 代碼如下:

-- 此演示中遠程服務器與本地服務器為同一服務器上的多版本多實例 
-- 假定遠程服務為:5.6.12(實例3406) 
-- 假定本地服務器:5.6.21(實例3306)    
-- 基于實例3306創(chuàng)建FEDERATED存儲引擎表test.federated_engine以到達訪問實例3406數(shù)據庫tempdb.tb_engine的目的 
 
[root@rhel64a ~]# cat /etc/issue 
Red Hat Enterprise Linux Server release 6.4 (Santiago)  
 
--啟動3406的實例 
[root@rhel64a ~]# /u01/app/mysql/bin/mysqld_multi start 3406 
[root@rhel64a ~]# mysql -uroot -pxxx -P3406 --protocol=tcp 
 
root@localhost[(none)]> show variables like 'server_id'; 
+---------------+-------+ 
| Variable_name | Value | 
+---------------+-------+ 
| server_id     | 3406  | 
+---------------+-------+ 
 
--實例3406的版本號 
root@localhost[tempdb]> show variables like 'version'; 
+---------------+------------+ 
| Variable_name | Value      | 
+---------------+------------+ 
| version       | 5.6.12-log | 
+---------------+------------+ 
 
--創(chuàng)建數(shù)據庫 
root@localhost[(none)]> create database tempdb; 
Query OK, 1 row affected (0.00 sec) 
 
-- Author : Leshami 
-- Blog   :http://blog.csdn.net/leshami 
 
root@localhost[(none)]> use tempdb 
Database changed 
 
--創(chuàng)建用于訪問的表 
root@localhost[tempdb]> create table tb_engine as  
    -> select engine,support,comment from information_schema.engines; 
Query OK, 9 rows affected (0.10 sec) 
Records: 9  Duplicates: 0  Warnings: 0 
 
--提取表的SQL語句用于創(chuàng)建為FEDERATED存儲引擎表 
root@localhost[tempdb]> show create table tb_engine \G 
*************************** 1. row *************************** 
       Table: tb_engine 
Create Table: CREATE TABLE `tb_engine` ( 
  `engine` varchar(64) NOT NULL DEFAULT '', 
  `support` varchar(8) NOT NULL DEFAULT '', 
  `comment` varchar(80) NOT NULL DEFAULT '' 
) ENGINE=InnoDB DEFAULT CHARSET=utf8 
 
--創(chuàng)建用于遠程訪問的賬戶 
root@localhost[tempdb]> grant all privileges on tempdb.* to 'remote_user'@'192.168.1.131' identified by 'xxx'; 
Query OK, 0 rows affected (0.00 sec) 
 
root@localhost[tempdb]> flush privileges; 
Query OK, 0 rows affected (0.00 sec) 

4、演示FEDERATED存儲引擎跨實例訪問

復制代碼 代碼如下:

[root@rhel64a ~]# mysql -uroot -pxxx 
 
root@localhost[(none)]> show variables like 'version'; 
+---------------+--------+ 
| Variable_name | Value  | 
+---------------+--------+ 
| version       | 5.6.21 | 
+---------------+--------+ 
 
#查看是否支持FEDERATED引擎 
root@localhost[(none)]> select * from information_schema.engines where engine='federated'; 
+-----------+---------+--------------------------------+--------------+------+------------+ 
| ENGINE    | SUPPORT | COMMENT                        | TRANSACTIONS | XA   | SAVEPOINTS | 
+-----------+---------+--------------------------------+--------------+------+------------+ 
| FEDERATED | NO      | Federated MySQL storage engine | NULL         | NULL | NULL       | 
+-----------+---------+--------------------------------+--------------+------+------------+ 
 
root@localhost[(none)]> exit 
[root@rhel64a ~]# service mysql stop 
Shutting down MySQL..[  OK  ] 
#配置啟用FEDERATED引擎 
[root@rhel64a ~]# vi /etc/my.cnf 
[root@rhel64a ~]# tail -7 /etc/my.cnf 
[mysqld] 
socket = /tmp/mysql3306.sock 
port = 3306 
pid-file = /var/lib/mysql/my3306.pid 
user = mysql 
server-id=3306/ 
federated         #添加該選項 
[root@rhel64a ~]# service mysql start 
Starting MySQL.[  OK  ] 
[root@rhel64a ~]# mysql -uroot -pxxx 
root@localhost[(none)]> select * from information_schema.engines where engine='federated'; 
+-----------+---------+--------------------------------+--------------+------+------------+ 
| ENGINE    | SUPPORT | COMMENT                        | TRANSACTIONS | XA   | SAVEPOINTS | 
+-----------+---------+--------------------------------+--------------+------+------------+ 
| FEDERATED | YES     | Federated MySQL storage engine | NO           | NO   | NO         | 
+-----------+---------+--------------------------------+--------------+------+------------+ 
 
root@localhost[(none)]> use test 
 
-- 創(chuàng)建基于FEDERATED引擎的表federated_engine 
root@localhost[test]> CREATE TABLE `federated_engine` ( 
    ->   `engine` varchar(64) NOT NULL DEFAULT '', 
    ->   `support` varchar(8) NOT NULL DEFAULT '', 
    ->   `comment` varchar(80) NOT NULL DEFAULT '' 
    -> ) ENGINE=FEDERATED DEFAULT CHARSET=utf8 
    -> CONNECTION='mysql://remote_user:xxx@192.168.1.131:3406/tempdb/tb_engine'; 
Query OK, 0 rows affected (0.00 sec) 
 
-- 下面是創(chuàng)建后表格式文件 
root@localhost[test]> system ls -hltr /var/lib/mysql/test 
total 12K 
-rw-rw---- 1 mysql mysql 8.5K Oct 24 08:22 federated_engine.frm 
 
--查詢表federated_engine 
root@localhost[test]> select * from federated_engine limit 2; 
+------------+---------+---------------------------------------+ 
| engine     | support | comment                               | 
+------------+---------+---------------------------------------+ 
| MRG_MYISAM | YES     | Collection of identical MyISAM tables | 
| CSV        | YES     | CSV storage engine                    | 
+------------+---------+---------------------------------------+ 
 
--更新表federated_engine 
root@localhost[test]> update federated_engine set support='NO' where engine='CSV'; 
Query OK, 1 row affected (0.03 sec) 
Rows matched: 1  Changed: 1  Warnings: 0 
 
--查看更新后的結果 
root@localhost[test]> select * from federated_engine where engine='CSV'; 
+--------+---------+--------------------+ 
| engine | support | comment            | 
+--------+---------+--------------------+ 
| CSV    | NO      | CSV storage engine | 
+--------+---------+--------------------+ 

5、創(chuàng)建FEDERATED引擎表的鏈接方式

復制代碼 代碼如下:

scheme://user_name[:password]@host_name[:port_num]/db_name/tbl_name
    scheme: A recognized connection protocol. Only mysql is supported as the scheme value at this point.
    user_name: The user name for the connection. This user must have been created on the remote server, and must have suitable privileges to perform the required actions (SELECT, INSERT,UPDATE, and so forth) on the remote table.
    password: (Optional) The corresponding password for user_name.
    host_name: The host name or IP address of the remote server.
    port_num: (Optional) The port number for the remote server. The default is 3306.
    db_name: The name of the database holding the remote table.
    tbl_name: The name of the remote table. The name of the local and the remote table do not have to match.
鏈接示例樣本:
    CONNECTION='mysql://username:password@hostname:port/database/tablename'
    CONNECTION='mysql://username@hostname/database/tablename'
    CONNECTION='mysql://username:password@hostname/database/tablename'

相關文章

  • mysql存儲emoji表情步驟詳解

    mysql存儲emoji表情步驟詳解

    在本篇內容中小編給大家整理了關于mysql存儲emoji表情的詳細步驟以及知識點,需要的朋友們學習下。
    2019-03-03
  • MySQL優(yōu)化表時提示 Table is already up to date的解決方法

    MySQL優(yōu)化表時提示 Table is already up to date的解決方法

    這篇文章主要介紹了MySQL優(yōu)化表時提示 Table is already up to date的解決方法,需要的朋友可以參考下
    2016-11-11
  • centos 6.4下使用rpm離線安裝mysql

    centos 6.4下使用rpm離線安裝mysql

    這篇文章主要為大家詳細介紹了centos 6.4下使用rpm離線安裝mysql的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • 深入解析MySQL雙寫緩沖區(qū)

    深入解析MySQL雙寫緩沖區(qū)

    雙寫緩沖區(qū)是MySQL中的一種優(yōu)化方式,主要用于提高數(shù)據的寫性能,本文將介紹Doublewrite Buffer的原理和應用,幫助讀者深入理解其如何提高MySQL的數(shù)據可靠性并防止可能的數(shù)據損壞,感興趣的可以了解一下
    2024-02-02
  • 解決Mysql主從錯誤:could not find first log file name in binary

    解決Mysql主從錯誤:could not find first log&nbs

    這篇文章主要介紹了解決Mysql主從錯誤:could not find first log file name in binary問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • MySQL中InnoDB存儲引擎的鎖的基本使用教程

    MySQL中InnoDB存儲引擎的鎖的基本使用教程

    這篇文章主要介紹了MySQL中InnoDB存儲引擎的鎖的基本概念,是MySQL入門學習中的基礎知識,需要的朋友可以參考下
    2015-11-11
  • MySQL刪除表數(shù)據與MySQL清空表命令的3種方法淺析

    MySQL刪除表數(shù)據與MySQL清空表命令的3種方法淺析

    刪除現(xiàn)有MySQL表非常容易,但是刪除任何現(xiàn)有的表時要非常小心,因為刪除表后丟失的數(shù)據將無法恢復,下面這篇文章主要給大家介紹了關于MySQL刪除表數(shù)據與MySQL清空表命令的3種方法的相關資料,需要的朋友可以參考下
    2022-08-08
  • Mysql數(shù)據庫開啟遠程連接流程

    Mysql數(shù)據庫開啟遠程連接流程

    文章講述了如何在本地MySQL數(shù)據庫上開啟遠程訪問,并詳細步驟包括配置防火墻、設置MySQL用戶權限、使用Navicat進行遠程連接等
    2025-02-02
  • Mysql?中的多表連接和連接類型詳解

    Mysql?中的多表連接和連接類型詳解

    這篇文章詳細介紹了MySQL中的多表連接及其各種類型,包括內連接、左連接、右連接、全外連接、自連接和交叉連接,通過這些連接方式,可以將分散在不同表中的相關數(shù)據組合在一起,從而進行更復雜的查詢和分析,感興趣的朋友一起看看吧
    2025-01-01
  • MySQL 數(shù)據庫鐵律(小結)

    MySQL 數(shù)據庫鐵律(小結)

    這篇文章主要介紹了MySQL 數(shù)據庫鐵律,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-09-09

最新評論

格尔木市| 榆社县| 古浪县| 梅河口市| 平泉县| 电白县| 汽车| 高清| 广饶县| 革吉县| 通辽市| 霍城县| 娱乐| 利川市| 黄石市| 赣州市| 泸定县| 同江市| 蒲城县| 台中市| 格尔木市| 扎赉特旗| 湘潭市| 阿拉尔市| 黄平县| 阳原县| 涿州市| 昭苏县| 深圳市| 开化县| 兴义市| 横山县| 丁青县| 衡阳县| 广河县| 吉林省| 牙克石市| 昂仁县| 洛浦县| 嘉祥县| 肇州县|