欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

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

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

1、FEDERATED存儲(chǔ)引擎的描述

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

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

2、安裝與啟用FEDERATED存儲(chǔ)引擎

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

3、準(zhǔn)備遠(yuǎn)程服務(wù)器環(huán)境

復(fù)制代碼 代碼如下:

-- 此演示中遠(yuǎn)程服務(wù)器與本地服務(wù)器為同一服務(wù)器上的多版本多實(shí)例 
-- 假定遠(yuǎn)程服務(wù)為:5.6.12(實(shí)例3406) 
-- 假定本地服務(wù)器:5.6.21(實(shí)例3306)    
-- 基于實(shí)例3306創(chuàng)建FEDERATED存儲(chǔ)引擎表test.federated_engine以到達(dá)訪問實(shí)例3406數(shù)據(jù)庫tempdb.tb_engine的目的 
 
[root@rhel64a ~]# cat /etc/issue 
Red Hat Enterprise Linux Server release 6.4 (Santiago)  
 
--啟動(dòng)3406的實(shí)例 
[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  | 
+---------------+-------+ 
 
--實(shí)例3406的版本號(hào) 
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存儲(chǔ)引擎表 
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)建用于遠(yuǎn)程訪問的賬戶 
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存儲(chǔ)引擎跨實(shí)例訪問

復(fù)制代碼 代碼如下:

[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         #添加該選項(xiàng) 
[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引擎表的鏈接方式

復(fù)制代碼 代碼如下:

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 備忘錄

    MySql 備忘錄

    在MySQL中如果不為NOT NULL字段賦值(等同于賦NULL值)也就是說,MySQL中NOT NULL并不是一個(gè)約束條件了
    2012-03-03
  • Mysql臟頁flush及收縮表空間原理解析

    Mysql臟頁flush及收縮表空間原理解析

    這篇文章主要介紹了Mysql臟頁flush及收縮表空間原理解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • mysql 數(shù)據(jù)庫設(shè)計(jì)

    mysql 數(shù)據(jù)庫設(shè)計(jì)

    大家都知道m(xù)ysql的myisam表適合讀操作大,寫操作少;表級鎖表
    2009-06-06
  • mysql -參數(shù)thread_cache_size優(yōu)化方法 小結(jié)

    mysql -參數(shù)thread_cache_size優(yōu)化方法 小結(jié)

    以下是某門戶網(wǎng)站的mysql狀態(tài)實(shí)例及分析過程,絕對的第一手?jǐn)?shù)據(jù)資料,很生動(dòng)的體現(xiàn)了參數(shù)thread_cache_size優(yōu)化的效果及優(yōu)化該參數(shù)的必要性,希望對各位系統(tǒng)管理員能有幫助。
    2011-03-03
  • MySQL數(shù)據(jù)庫基礎(chǔ)命令大全(收藏)

    MySQL數(shù)據(jù)庫基礎(chǔ)命令大全(收藏)

    今天小編給大家整理一下mysql數(shù)據(jù)庫的基礎(chǔ)命令,特此分享到腳本之家平臺(tái),供大家參考下
    2016-12-12
  • MySQL?8.0.35數(shù)據(jù)庫下載安裝以及環(huán)境變量的配置方法

    MySQL?8.0.35數(shù)據(jù)庫下載安裝以及環(huán)境變量的配置方法

    很多朋友剛開始接觸mysql數(shù)據(jù)庫服務(wù)器,這篇文章主要給大家介紹了關(guān)于MySQL?8.0.35數(shù)據(jù)庫下載安裝以及環(huán)境變量的配置方法,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2023-12-12
  • Mysql using使用詳解

    Mysql using使用詳解

    本文主要介紹了Mysql using使用詳解,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • 虛擬機(jī)linux端mysql數(shù)據(jù)庫無法遠(yuǎn)程訪問的解決辦法

    虛擬機(jī)linux端mysql數(shù)據(jù)庫無法遠(yuǎn)程訪問的解決辦法

    最近在項(xiàng)目搭建過程中遇到一問題,有關(guān)虛擬機(jī)linux端mysql數(shù)據(jù)庫無法遠(yuǎn)程訪問,通過查閱相關(guān)數(shù)據(jù)庫資料問題解決,下面把具體的解決辦法分享給大家,有需要的朋友可以參考下
    2015-08-08
  • 一文帶你分清MySQL回表查詢與索引覆蓋

    一文帶你分清MySQL回表查詢與索引覆蓋

    這篇文章主要給大家詳細(xì)介紹如何分清MySQL回表查詢與索引覆蓋,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • Mysql5.7.18版本(二進(jìn)制包安裝)自定義安裝路徑教程詳解

    Mysql5.7.18版本(二進(jìn)制包安裝)自定義安裝路徑教程詳解

    這篇文章主要介紹了Mysql5.7.18版本(二進(jìn)制包安裝)自定義安裝路徑教程詳解,需要的朋友可以參考下
    2017-07-07

最新評論