PhxSQL安装与配置指南

PhxSQL安装与配置指南

phxsql A high availability MySQL cluster that guarantees data consistency between a master and slaves. phxsql 项目地址: https://gitcode.com/gh_mirrors/ph/phxsql

1. 项目基础介绍

PhxSQL 是由腾讯开源的一个高可用性和强一致性 MySQL 集群,基于 Paxos 和 Percona 构建。它能够确保在集群节点之间自动故障转移和数据一致性。PhxSQL 支持线性可序列化的一致性,与 Zookeeper 同等级别,同时完全兼容 MySQL 和 MySQL 客户端。

主要编程语言:C++(PhxSQL 的核心代码)和 Python(安装脚本)。

2. 项目使用的关键技术和框架

  • Paxos:一种基于多数派的分布式一致性协议,用于在集群节点间保持数据一致性。
  • Percona:MySQL 的一个分支,具有更好的性能和更多功能。
  • PhxPaxos:腾讯内部实现的 Paxos 库,用于 PhxSQL 的一致性保证。
  • PhxRPC:腾讯内部实现的 RPC 框架,用于内部通信。
  • Libco:腾讯内部实现的协同多线程库。

3. 项目安装和配置的准备工作

准备工作

  1. 确保您的系统为 Ubuntu 64位版本。
  2. 准备以下第三方库:
    • glog
    • leveldb
    • protobuf
    • phxpaxos
    • colib
    • phxrpc

安装步骤

安装第三方库
  1. 下载并安装上述第三方库,确保在 phxsql/third_party 目录下或者创建符号链接指向这些库的安装路径。

    ./configure CXXFLAGS=-fPIC --prefix=/home/root/phxsql/third_party/glog
    # 重复上述步骤,为每个库配置并安装
    
  2. 下载 Percona Server 源代码包 percona-server-5.6.31-77.0.tar.gz 并将其移动到 PhxSQL 目录中,重命名或创建符号链接为 'percona'。

安装 PhxSQL
  1. 执行自动安装脚本并编译安装:

    ./autoinstall.sh && make && make install
    
  2. 如果需要将二进制包传输到目标主机,可以执行:

    make package
    

    这将生成一个 phxsql-$version.tar.gz 的压缩包。

  3. 在所有目标主机上解压缩该包,然后进入 phxsql/tools 目录,执行安装脚本:

    python install.py --help
    # 根据帮助文档执行安装,例如:
    python2.7 install.py -i"your_inner_ip" -p 54321 -g 6000 -y 11111 -P 17000 -a 8001 -f/tmp/data/
    
  4. 在任意一台主机上初始化集群:

    ./phxbinlogsvr_tools_phxrpc -f InitBinlogSvrMaster -h"ip1,ip2,ip3" -p 17000
    

    其中 17000 应该替换为 phxbinlogsvr 监听的端口。

  5. 当主节点初始化完成的消息出现时,集群即处于活动状态。您可以通过以下命令检查集群状态:

    mysql -uroot -h"your_inner_ip" -P$phxsqlproxy_port
    

以上步骤为 PhxSQL 的基础安装和配置流程。在实际应用中,您可能需要根据具体需求调整配置文件和参数。

phxsql A high availability MySQL cluster that guarantees data consistency between a master and slaves. phxsql 项目地址: https://gitcode.com/gh_mirrors/ph/phxsql

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

尤辰城Agatha

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值