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

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

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

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

映射實現(xiàn)
在mysql中創(chuàng)建遠程服務(wù)器數(shù)據(jù)庫中的需要映射的表,映射表名稱可以隨意命名,但是數(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ù)庫名/表名 ) ENGINE=FEDERATED CONNECTION='mysql://root:123456@192.168.1.8:3306/db/user';
注意:ENGINE=FEDERATED,使用federated引擎,修改用戶名,密碼,地址,端口號,數(shù)據(jù)庫,表
這樣就可以將遠程的user表數(shù)據(jù)實時映射到hn_user表中,實現(xiàn)mysql跨服務(wù)器查詢數(shù)據(jù)。
問題總結(jié)
使用過程中遇見的:
創(chuàng)建表之后,打開會爆如下錯誤

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

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

到此這篇關(guān)于MySQL跨服務(wù)器數(shù)據(jù)映射的實現(xiàn)的文章就介紹到這了,更多相關(guān)MySQL跨服務(wù)器數(shù)據(jù)映射內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
mysql 5.7.17 安裝教程 附MySQL服務(wù)無法啟動的解決方法
這篇文章主要為大家詳細介紹了mysql 5.7.17安裝教程,并且為大家分享了MySQL服務(wù)無法啟動的解決方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-03-03
mysql死鎖(dead lock)與鎖等待(lock wait)的出現(xiàn)解決
死鎖和鎖等待是數(shù)據(jù)庫運維中常見的問題,區(qū)別在于死鎖會自動解除,而鎖等待需要手動處理,本文就來介紹一下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ù)的詳細講解
在SQL中我們經(jīng)常需要根據(jù)時間字段查詢數(shù)據(jù),今天用到一個好用的時間字段,用來查詢一整天的數(shù)據(jù),下面這篇文章主要給大家介紹了關(guān)于mysql日期函數(shù)TO_DAYS()函數(shù)的相關(guān)資料,需要的朋友可以參考下2022-08-08

