OneProxy學習筆記

官方網站資源下載只有支持CentOS6的軟件包,在CentOS7中也可使用,可是啓動文件有不一樣。每次手動kill,再啓動很麻煩。html

剛發現官方博客資源下載有最新的支持CentOS7的軟件包mysql

http://www.onexsoft.com/zh/downloadlinux

系統環境: cat /etc/redhat-releasesql

CentOS Linux release 7.6.1810 (Core)數據庫

1.下載安裝包並解壓

下載: wget http://www.onexsoft.com/software/oneproxy-rhel7-linux64-v6.2.0-ga.tar.gz後端

解壓: tar -zxvf oneproxy-rhel7-linux64-v6.2.0-ga.tar.gzcentos

解壓完成對應目錄下有一個oneproxy的目錄服務器

2. 修改配置文件 /data/oneproxy/conf/proxy.conf

  • 原始配置
[oneproxy]
proxy-license = A2FF461456A67F28,D2F6A5AD70C9042D

proxy-httpserver = 0.0.0.0:8080

proxy-auto-readonly = 0
proxy-slave-addresses.1 = db1:3306@default
proxy-master-addresses.2 = db2:3306@default
# proxy-slave-addresses.3 = ...

proxy-group-policy = default:read_slave
proxy-user-list = default:test/1378F6CC3A8E8A43CA388193FBED5405982FBBD3@test

更新後的配置:測試

[oneproxy]

proxy-license = A2FF461456A67F28,D2F6A5AD70C9042D

proxy-httpserver = 0.0.0.0:8080

proxy-auto-readonly = 0

mysql-version = 5.7.26

proxy-address = :3307

admin-address = :4041

proxy-master-addresses.1 = 127.0.0.1:3306@default

proxy-group-policy.1 = default:master-only

proxy-user-list.1            = default:root/0A4676F8872CD8EB6438921C860D22E0A07751C0@lottery_common

proxy-charset = utf8_general_ci

數據庫用戶名密碼須要進入oneproxy管理後臺生成,./demo.sh 啓動oneproxy網站

進入管理後臺: mysql -uadmin -pOneProxy -h 127.0.0.1 -P4041 (進入oneproxy管理後臺使用的默認帳號&密碼)

生成配置文件的用戶密碼 passwd 原始密碼;

例如: passwd 'secret133'; //能夠不帶引號

oneproxy管理後臺操做命令:
查看後端機器: list backend;
查看組:list group;
查看連接池: list pool;

能夠查看當前的mysql主機,分組等狀況。

這裏只是爲了熟悉oneproxy軟件基本的配置和單數據庫的分表,因此只是要一臺sql。

網上太多教程上來就N臺數據庫,分庫分表的配置,靠,做爲一個第一次使用的人看着那些配置暈死。

經過oneproxy代理鏈接業務數據庫

其實就是 proxy-address = :3307 鏈接 proxy-master-addresses.1 = 127.0.0.1:3306@default

在客服端中鏈接oneproxy,由oneproxy代理去鏈接各業務數據庫

跟鏈接普通的數據庫同樣,只不過端口要使用oneproxy配置文件配置的端口

mysql -utest -ptest -h 127.0.0.1 -P3307

至此oneproxy的安裝,啓動 ,進入管理後臺,基本的配置,經過oneproxy代理鏈接業務數據庫都會了。

下面就實現一個簡單的分表配置來測試oneproxy的分表功能

增長配置項引入分表的配置: proxy-part-tables.1 = conf/history_open.txt

數據庫創建相關的分表

按站點site_id分表配置文件history_open.txt:

[{
"table" : "t_lottery_history_open",

"pkey" : "site_id",

"type" : "int",

"method" : "list",

"partitions":

[
{ "name" : "t_lottery_history_open_1", "group": "default", "value" : ["1"] },

{ "name" : "t_lottery_history_open_4", "group": "default", "value" : ["4"] }

]

}]

重啓oneproxy就能夠測試查詢,插入是否正確。

------------------------- 這裏是分割線 --------------------------------

下面是以前在CentOS6下安裝時記錄的筆記,反正亂七八糟,也懶得看,有空再整理。再次安裝忘得乾乾淨淨,因此上面在CentOS7下再次安裝記錄整個流程。

使用中的問題:

  • 配置文件的表必須存在才能夠啓動成功

  • 修改oneproxy的配置文件以後須要重啓

mysql 中間件OneProxy總結 https://blog.csdn.net/wjc19911118/article/details/51375196?utm_source=copy

OneProxy 服務器能夠和Mysql共同一臺機器

OneProxy 後臺管理登陸

默認client port 3307
mysql -utest -ptest -h 127.0.0.1 -P3307
默認admin port 4041
mysql -uadmin -pOneProxy -h 127.0.0.1 -P4041

OneProxy 安裝

官方文檔 https://pan.baidu.com/s/1o8J6n8I#list/path=%2F

安裝目錄 /usr/local/oneproxy
啓動服務 service oneproxy start
配置目錄 /usr/local/oneproxy/conf/

one proxy 分表原理(官方)

http://www.onexsoft.com/zh/oneproxy-simple-database-sharding.html

table 表名稱
pkey 分區鍵
type 分區鍵字段類型
method 分區方法
partitions 分區配置
db 數據庫名稱
suffix 後綴
group 分組
value 值

OneProxy 分區方法:
range 按照字段值範圍
list
hash

原理博客 https://blog.csdn.net/wjc19911118/article/details/51375196

分表查詢 oneproxy
https://blog.csdn.net/weixin_37998647/article/details/78750033

https://blog.csdn.net/jerry____wang/article/details/52981745

修改oneproxy的配置文件以後須要重啓

oneproxy 配置文件配置的表,數據庫必須存在,否則會失敗

怎麼查看oneproxy 執行sql,集合了那些表了....

oneProxy

參考: https://blog.csdn.net/wjc19911118/article/details/51375196?utm_source=copy
能夠和Mysql共同一臺機器
默認client port 3307
mysql -utest -ptest -h 127.0.0.1 -P3307
默認admin port 4041
進入管理後臺
mysql -uadmin -pOneProxy -h 127.0.0.1 -P4041

登陸oneproxy 管理後臺
mysql -uadmin -pOneProxy -P4041 -h127.0.0.1

  1. 健康檢查
    每秒鐘Proxy會和後端進行通訊,檢測後端數據庫狀態。
    Markup: 正常狀態,能夠提供服務
    Markdown:異常狀態,不能夠提供服務
    查看狀態
    查看後端機器: list backend;
    查看組:list group;
    查看連接池: list pool;
    查看日誌文件:tail -100f oneproxy.log

做者:coder_up
來源:CSDN
原文:https://blog.csdn.net/wjc19911118/article/details/51375196
版權聲明:本文爲博主原創文章,轉載請附上博文連接

數據庫中間件安裝

  1. 下載安裝包,解壓且放在指定的目錄下
    wget http://www.onexsoft.com/software/oneproxy-rhel6-linux64-v6.2.0-ga.tar.gz
    tar -zxvf oneproxy-rhel6-linux64-v6.2.0-ga.tar.gz
    mv oneproxy /usr/local/oneproxy
    oneproxy 官方博客 http://www.onexsoft.com/zh/category/oneproxy

  2. 分庫分表
  3. 多集羣管理

水平分片管理 user01 user02 user03 user04 ...
機器列表

分庫分表 有垂直切分,水平切分
何謂垂直切分,即將表按照功能模塊、關係密切程度劃分出來,部署到不一樣的庫上
何謂水平切分,當一個表中的數據量過大時,咱們能夠把該表的數據按照某種規則,例如userID散列,進行劃分,而後存儲到多個結構相同的表,和不一樣的庫上

分庫分表問題:

  1. 事物問題
  2. 跨庫跨表的join問題
  3. 額外的數據管理負擔和數據運算壓力 參考: https://www.cnblogs.com/jshen/p/7682502.html
相關文章
相關標籤/搜索