資料介紹
軟件簡介
MySQL-Redis
什么是 MySQL-Redis ?
MySQL-Redis?是一款可以在?MySQL?中操作?Redis?的一個UDF (MySQL 用戶自定義函數(shù)插件)
MySQL-Redis 可以操作 Redis 集群嗎?
可以的,?MySQL-Redis?可以操作單例或者集群?Redis,操作的唯一的區(qū)別就是?MySQL?函數(shù)不一樣而已
性能怎么樣?
性能這個取決于網(wǎng)絡(luò), 實例操作 Redis 速度很快。因為使用 C 語言開發(fā)
使用場景 ?
可以使用在需要 Redis 和 MySQL 數(shù)據(jù)一致性的地方。
示例
SELECT RedisConnect("127.0.0.1", 6379);
BEGIN;
UPDATE books SET price = 10.5 WHERE id = 10;
SELECT RedisRawCommand("SET id:10:price 10.5");
COMMIT;
SELECT RedisConnectFree();
上面示例展示了,在事務(wù)中處理數(shù)據(jù),達(dá)到?Redis?和?MySQL?數(shù)據(jù)一致性的解決辦法,當(dāng)然也可以在觸發(fā)器中使用。
MySQL-Redis 函數(shù)
-
RedisConnect("127.0.0.1", 6379)
單例 Redis 連接,第二個參數(shù)可以省略,默認(rèn)端口 6379
對應(yīng) SQL 代碼:
SELECT RedisConnect("127.0.0.1", 6379); -
RedisClusterConnect
Redis 集群連接
對應(yīng) SQL 代碼:
SELECT RedisClusterConnect("127.0.0.1:6379,127.0.0.2:6379");多個機(jī)器之間采用
,隔開 -
RedisConnectFree
對應(yīng)?RedisConnect() 的連接釋放
操作完成后,如果需要手動釋放,需要調(diào)用本方法,目前暫未實現(xiàn)連接池,后續(xù)版本實現(xiàn)
對應(yīng) SQL 代碼:
SELECT RedisConnectFree();
-
RedisClusterConnectFree
對應(yīng)?RedisClusterConnect() 的連接釋放
操作完成后,如果需要手動釋放,需要調(diào)用本方法,目前暫未實現(xiàn)連接池,后續(xù)版本實現(xiàn)
使用方法:
SELECT RedisClusterConnectFree();
-
RedisSet
設(shè)置鍵值對的快捷方法
對應(yīng) SQL 代碼:
SELECT RedisSet("a", 1); -- 等同于 Redis中的語句: SET a 1 -
RedisClusterSet
設(shè)置鍵值對的集群方法方法,參數(shù)等同于 RedisSet 函數(shù),見上面
-
RedisExecCommand
執(zhí)行 Redis 語句,包含三個或者兩個參數(shù),如下 SQL:
三個參數(shù)的 SQL 方法:
SELECT RedisExecCommand("SET", "a", 1);兩個參數(shù)的 SQL 方法:
SELECT RedisExecCommand("SELECT", 1); -
RedisClusterExecCommand
集群操作方法,參數(shù)等同于上面單例:RedisExecCommand
-
RedisRawCommand
執(zhí)行 Redis 語句,由用戶提供一個完整的 Redis 語句
SQL 代碼如下:
SELECT RedisRawCommand("SET Hello World"); -
RedisClusterRawCommand
集群模式的?RedisClusterRawCommand?方法,參數(shù)等同于 單例的?RedisRawCommand
-
RedisListIndex
獲取 Redis List 數(shù)據(jù)結(jié)構(gòu)的某一項,第一項表示 Redis 數(shù)據(jù)結(jié)構(gòu),第二項表示索引值,如:
SELECT RedisListIndex(RedisRawCommand("LRANGE score_lists 0 10"), 1); -
RedisListJoin
將 Redis List 數(shù)據(jù)結(jié)構(gòu)的所有項通過第二個參數(shù)合并為一個字符串,如:
SELECT RedisListJoin(RedisRawCommand("LRANGE score_lists 0 10"), "-"); // 假設(shè) Redis List score_lists結(jié)構(gòu)如下: // 0 1 2 // 那么合并結(jié)果: // 0-1-2
返回值
1:
RedisSET?、?RedisClusterSet?、RedisConnect?、RedisConnectFree?、?RedisClusterConnect?、?RedisClusterConnectFree?成功的情況下返回 1,否則 SQL 語句錯誤
2:
RedisExecCommand?、?RedisClusterExecCommand?、RedisRawCommand?、RedisClusterRawCommand、RedisListIndex?、RedisListJoin?返回字符串,具體如下:
-
OK
在執(zhí)行 Redis SET 命令的時候返回 "OK" 表示成功,否則就表示錯誤信息
-
其他字符串
執(zhí)行 GET 命令的時候 返回具體值
怎么安裝 ?
前提條件:
電腦安裝?Redis?、MySQL?(開發(fā)機(jī)器 MySQL 5.7.22)、hiredis-vip
準(zhǔn)備好前提條件后,開始 MySQL-Redis 插件的編譯安裝過程
-
git clone 代碼庫
git clone https://gitee.com/josinli/mysql_redis.git
-
修改 CMakeLists.txt 文件,因為代碼庫采用 CMake 編譯系統(tǒng):
cmake_minimum_required(VERSION 3.13) project(udf_str C) set(CMAKE_C_STANDARD 99) include_directories( . /usr/local/mysql/include/ # 把這行更改為您系統(tǒng)安裝mysql的頭文件目錄 /usr/local/include/hiredis-vip # 把這行更改為您系統(tǒng)安裝hiredis-vip的頭文件目錄 ) link_directories( /usr/local/lib # 把這行更改為您洗的 hiredis-vip的lib安裝目錄 ) add_library(udf_redis SHARED library.c library.h) target_link_libraries(udf_redis hiredis_vip) -
更改完成后,執(zhí)行下面的操作
cd build cmake .. make
-
可以看到 build 目錄生成了庫文件?libudf_redis.so?或者?libudf_redis.dylib
-
進(jìn)入您的 MySQL,執(zhí)行如下 SQL 語句找到您的 MySQL 插件目錄:
SHOW VARIABLES LIKE 'plugin_dir%';
-
拷貝上面第四步中的 libudf_redis.so 或者 libudf_redis.dylib 到第五步中的目錄中
-
針對您的系統(tǒng),linux 系統(tǒng)拷貝 create_function_linux.sql 或者 OSX 系統(tǒng)拷貝 create_function_osx.sql 并執(zhí)行
-
重啟您的 MySQL,開始在 SQL 中愉快的體驗 Redis 吧!
- LabVIEW操作MySQL數(shù)據(jù)庫編程實例 56次下載
- windows-redis-memcahed redis和memcache集成快速使用包
- redis設(shè)計與實現(xiàn) 0次下載
- redis入門指南 2次下載
- 嵌入式Linux系統(tǒng)重啟后如何使得redis中的數(shù)據(jù)不再有
- 在linux下安裝Apache+Php+Mysql
- 讀寫MySQL數(shù)據(jù)庫教程電子版下載 0次下載
- MySQL的基本操作詳細(xì)資料說明 2次下載
- 如何使用PHP查詢MYSQL生成動態(tài)表單 8次下載
- MySQL教程之MySQL 5權(quán)威指南中文版資料免費(fèi)下載 0次下載
- The MySQL C API 編程實例 5次下載
- 基于紫金橋組態(tài)軟件與mysql數(shù)據(jù)庫的連接 10次下載
- mysql詳細(xì)教程 0次下載
- PHP/MySQL教程 0次下載
- mysql中文手冊
- 利用dockerfile搭建mysql主從集群和redis集群 838次閱讀
- Redis與MySQL協(xié)同升級企業(yè)緩存 741次閱讀
- Windows Docker部署Redis的流程 1.7k次閱讀
- Redis的分頁+多條件模糊查詢組合實現(xiàn)方案 1.6k次閱讀
- Redis中的使用 887次閱讀
- 如何用Springboot整合Redis 1.5k次閱讀
- MySQL與Redis延遲雙刪策略 1.5k次閱讀
- 如何使用Rust連接Redis 3.5k次閱讀
- Redis架構(gòu)演化之路 1.1k次閱讀
- Redis的主從、哨兵、Redis Cluster集群 1.4k次閱讀
- 什么是 Redis 1.8k次閱讀
- 來練習(xí)一個寫Redis部署的腳本 1.3k次閱讀
- Redis和MySQL保持?jǐn)?shù)據(jù)統(tǒng)一的方法介紹 2.6k次閱讀
- redis和mongodb數(shù)據(jù)庫對比_redis、memcache、mongoDB 對比 4.5k次閱讀
- python操作redis 892次閱讀
下載排行
本周
- 1耗盡型MOS FET產(chǎn)品目錄選型表
- 0.14 MB | 2次下載 | 免費(fèi)
- 2TI系列-米爾TI AM62L核心板開發(fā)板-高能效低功耗嵌入式平臺
- 1.51 MB | 次下載 | 免費(fèi)
- 3WILLSEMI韋爾20年半年度報告由代理分銷經(jīng)銷一級代理分銷經(jīng)銷
- 3.30 MB | 次下載 | 免費(fèi)
- 4LRC 樂山無線電InTWSApplications家電由原廠代理分銷經(jīng)銷一級代理分銷經(jīng)銷供應(yīng)
- 85.84 KB | 次下載 | 免費(fèi)
- 5LAT1596 一文說明白 STM32G4 雙 Bank 啟動與升級
- 0.64 MB | 次下載 | 5 積分
- 6LAT1594_基于事件喚醒低功耗之介紹
- 0.37 MB | 次下載 | 5 積分
- 7PT8P2309 觸控 A/D 型 8-Bit MCU規(guī)格書
- 4.05 MB | 次下載 | 免費(fèi)
- 8PT8P2308 觸控 A/D 型 8-Bit MCU規(guī)格書
- 4.13 MB | 次下載 | 免費(fèi)
本月
- 1美的電磁爐電路原理圖資料
- 4.39 MB | 19次下載 | 10 積分
- 2反激式開關(guān)電源設(shè)計解析
- 0.89 MB | 11次下載 | 5 積分
- 3耗盡型MOS FET產(chǎn)品目錄選型表
- 0.14 MB | 2次下載 | 免費(fèi)
- 4簡易光伏控制器原理圖資料
- 0.07 MB | 1次下載 | 5 積分
- 52EDL05x06xx系列 600V半橋門驅(qū)動器帶集成自舉二極管(BSD)手冊
- 0.69 MB | 1次下載 | 免費(fèi)
- 6國產(chǎn)千兆網(wǎng)口芯片PT153S中文資料
- 1.35 MB | 次下載 | 免費(fèi)
- 7斯丹電子 | 用于芯片測試系統(tǒng)的射頻干簧繼電器
- 5.11 MB | 次下載 | 免費(fèi)
- 8SFI立昌ESD/TVS管原廠代理分銷經(jīng)銷一級代理分銷經(jīng)銷
- 294.76 KB | 次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935137次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233095次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191448次下載 | 10 積分
- 5十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183360次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81605次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73829次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App





創(chuàng)作
發(fā)文章
發(fā)帖
提問
發(fā)資料
發(fā)視頻
上傳資料賺積分
評論