官方網站資源下載只有支持CentOS6的軟件包,在CentOS7中也可使用,可是啓動文件有不一樣。每次手動kill,再啓動很麻煩。html
剛發現官方博客資源下載有最新的支持CentOS7的軟件包mysql
http://www.onexsoft.com/zh/downloadlinux
系統環境: cat /etc/redhat-releasesql
CentOS Linux release 7.6.1810 (Core)數據庫
下載: 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的目錄服務器
[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臺數據庫,分庫分表的配置,靠,做爲一個第一次使用的人看着那些配置暈死。
其實就是 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就能夠測試查詢,插入是否正確。
------------------------- 這裏是分割線 --------------------------------
使用中的問題:
配置文件的表必須存在才能夠啓動成功
修改oneproxy的配置文件以後須要重啓
OneProxy 服務器能夠和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
官方文檔 https://pan.baidu.com/s/1o8J6n8I#list/path=%2F
安裝目錄 /usr/local/oneproxy
啓動服務 service oneproxy start
配置目錄 /usr/local/oneproxy/conf/
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 執行sql,集合了那些表了....
參考: 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
做者:coder_up
來源:CSDN
原文:https://blog.csdn.net/wjc19911118/article/details/51375196
版權聲明:本文爲博主原創文章,轉載請附上博文連接
下載安裝包,解壓且放在指定的目錄下
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
多集羣管理
水平分片管理 user01 user02 user03 user04 ...
機器列表
分庫分表 有垂直切分,水平切分
何謂垂直切分,即將表按照功能模塊、關係密切程度劃分出來,部署到不一樣的庫上
何謂水平切分,當一個表中的數據量過大時,咱們能夠把該表的數據按照某種規則,例如userID散列,進行劃分,而後存儲到多個結構相同的表,和不一樣的庫上
分庫分表問題: