MySQL跨服務(wù)器數(shù)據(jù)映射的實(shí)現(xiàn)
在日常的開(kāi)發(fā)中經(jīng)常進(jìn)行跨數(shù)據(jù)庫(kù)進(jìn)行查詢數(shù)據(jù)。
同服務(wù)器下跨數(shù)據(jù)庫(kù)進(jìn)行查詢?cè)诒砬凹由蠑?shù)據(jù)庫(kù)名就可以查詢到數(shù)據(jù)。
在數(shù)據(jù)超出服務(wù)器承載的時(shí)候,往往需要把數(shù)據(jù)分服務(wù)器存放,這時(shí)候就涉及到了跨服務(wù)器進(jìn)行操作的業(yè)務(wù)
跨服務(wù)器進(jìn)行查詢mysql提供了FEDERATED引擎進(jìn)行映射表,然后進(jìn)行查詢。
環(huán)境準(zhǔn)備
1. 首先是要查看數(shù)據(jù)庫(kù)的federated引擎 開(kāi)啟/關(guān)閉 狀態(tài)
show engines;

mysql數(shù)據(jù)庫(kù)federated引擎是關(guān)閉的,
- 啟動(dòng)federated引
- 找到自己的mysq>>>my.ini
- 在【mysqld】下添加 federated 啟用FEDERATED引擎 并保存文件

2. 打開(kāi)任務(wù)管理器,并重啟mysql服務(wù)

3. 再次查看FEDERATED引擎狀態(tài),引擎已啟動(dòng)

映射實(shí)現(xiàn)
在mysql中創(chuàng)建遠(yuǎn)程服務(wù)器數(shù)據(jù)庫(kù)中的需要映射的表,映射表名稱可以隨意命名,但是數(shù)據(jù)結(jié)構(gòu)必要一樣。
CREATE TABLE `hn_user` ( `id` varchar(32) NOT NULL, `name` varchar(20) DEFAULT NULL, `phone` varchar(11) DEFAULT NULL, `idcard` varchar(18) DEFAULT NULL, `update_time` bigint(13) DEFAULT NULL, `add_time` bigint(13) DEFAULT NULL, PRIMARY KEY (`id`) //mysql://用戶名:密碼@服務(wù)器ip:端口/數(shù)據(jù)庫(kù)名/表名 ) ENGINE=FEDERATED CONNECTION='mysql://root:123456@192.168.1.8:3306/db/user';
注意:ENGINE=FEDERATED,使用federated引擎,修改用戶名,密碼,地址,端口號(hào),數(shù)據(jù)庫(kù),表
這樣就可以將遠(yuǎn)程的user表數(shù)據(jù)實(shí)時(shí)映射到hn_user表中,實(shí)現(xiàn)mysql跨服務(wù)器查詢數(shù)據(jù)。
問(wèn)題總結(jié)
使用過(guò)程中遇見(jiàn)的:
創(chuàng)建表之后,打開(kāi)會(huì)爆如下錯(cuò)誤

原因是我安裝的mysql版本是8版本的,較高的版本的ssl默認(rèn)是開(kāi)啟的,我們要關(guān)閉ssl即可,
登錄mysql,執(zhí)行命令
SHOW VARIABLES LIKE '%ssl%';
可以看到我這邊的ssl是開(kāi)啟的

進(jìn)入my.ini文件同樣在[mysqld]下加上
skip_ssl
重啟mysql服務(wù)即可

到此這篇關(guān)于MySQL跨服務(wù)器數(shù)據(jù)映射的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)MySQL跨服務(wù)器數(shù)據(jù)映射內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
MySQL動(dòng)態(tài)修改varchar長(zhǎng)度的方法
這篇文章主要介紹了MySQL動(dòng)態(tài)修改varchar長(zhǎng)度的方法的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-07-07
mysql 5.7.17 安裝教程 附MySQL服務(wù)無(wú)法啟動(dòng)的解決方法
這篇文章主要為大家詳細(xì)介紹了mysql 5.7.17安裝教程,并且為大家分享了MySQL服務(wù)無(wú)法啟動(dòng)的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-03-03
mysql死鎖(dead lock)與鎖等待(lock wait)的出現(xiàn)解決
死鎖和鎖等待是數(shù)據(jù)庫(kù)運(yùn)維中常見(jiàn)的問(wèn)題,區(qū)別在于死鎖會(huì)自動(dòng)解除,而鎖等待需要手動(dòng)處理,本文就來(lái)介紹一下mysql死鎖(dead lock)與鎖等待(lock wait),感興趣的可以了解一下2024-09-09
深入解析MySQL索引數(shù)據(jù)結(jié)構(gòu)
什么是索引?索引就是排好序的數(shù)據(jù)結(jié)構(gòu),可以幫助我們快速的查找到數(shù)據(jù),下面這篇文章主要給大家介紹了關(guān)于MySQL索引數(shù)據(jù)結(jié)構(gòu)的相關(guān)資料,需要的朋友可以參考下2021-10-10
mysql日期函數(shù)TO_DAYS()函數(shù)的詳細(xì)講解
在SQL中我們經(jīng)常需要根據(jù)時(shí)間字段查詢數(shù)據(jù),今天用到一個(gè)好用的時(shí)間字段,用來(lái)查詢一整天的數(shù)據(jù),下面這篇文章主要給大家介紹了關(guān)于mysql日期函數(shù)TO_DAYS()函數(shù)的相關(guān)資料,需要的朋友可以參考下2022-08-08

