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

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

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

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

1、FEDERATED存儲引擎的描述

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

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

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ù)據(jù)庫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ù)據(jù)庫 
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 
 
--查看更新后的結(jié)果 
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'

相關(guān)文章

  • mysql存儲emoji表情步驟詳解

    mysql存儲emoji表情步驟詳解

    在本篇內(nèi)容中小編給大家整理了關(guān)于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的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • 深入解析MySQL雙寫緩沖區(qū)

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

    雙寫緩沖區(qū)是MySQL中的一種優(yōu)化方式,主要用于提高數(shù)據(jù)的寫性能,本文將介紹Doublewrite Buffer的原理和應用,幫助讀者深入理解其如何提高MySQL的數(shù)據(jù)可靠性并防止可能的數(shù)據(jù)損壞,感興趣的可以了解一下
    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ù)據(jù)與MySQL清空表命令的3種方法淺析

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

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

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

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

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

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

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

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

最新評論

仁寿县| 郸城县| 本溪市| 永新县| 襄城县| 阜城县| 措勤县| 彭阳县| 三亚市| 伊金霍洛旗| 明溪县| 武鸣县| 定南县| 湖北省| 梧州市| 从江县| 纳雍县| 横山县| 蒙城县| 南陵县| 茂名市| 洞口县| 郯城县| 江油市| 郴州市| 沛县| 霍州市| 饶河县| 和林格尔县| 凤庆县| 东宁县| 遂宁市| 安溪县| 靖边县| 景宁| 洪雅县| 南汇区| 藁城市| 那坡县| 迁西县| 萍乡市|