# tp6分布式 **Repository Path**: CCAPI/tp6-distributed ## Basic Information - **Project Name**: tp6分布式 - **Description**: thinkphp6分布式设置 - **Primary Language**: PHP - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-02-27 - **Last Updated**: 2024-06-03 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # tp6分布式设置 ## 1. 同步数据库教程 ## 2. 读写分离代码 ## git安装并拉取代码 - sudo yum install -y openssl-devel git - git clone https://gitee.com/CCAPI/tp6-distributed.git tp6distributed ## composer安装 - 删除禁用函数,宝塔面板默认禁用一些安装 Composer 要用到的 1个函数如下:putenv() - “PHP管理”→“禁用函数”→“删除putenv” - curl -sS https://getcomposer.org/installer | php - sudo mv composer.phar /usr/local/bin/composer - sudo composer install - tp项目下更新依赖 composer update ![输入图片说明](image11.png) ## 准备两台服务器,虚拟机演示 - 192.168.128.132(主) - 192.168.128.134(从) ## 两台服务器ping一下 ![输入图片说明](image9.png) ![输入图片说明](image10.png) ## 将两个服务器的放火墙关闭 - systemctl stop firewalld.service ## 环境配置 - Linux CentOS7 - 1. Mysql5.7 - 2. php8.2 - 3. nginx1.22.1 - 4. thinkphp6 - 5. 宝塔 ## 192.168.128.132(主) 相关设置 ### 1. 创建slave账号 - mysql -u root -p - 输入密码 - grant replication slave on *.* to 'slave'@'%' identified by '123456'; ### 2. 查看主库日志名称 - mysql -u root -p - 输入密码 - show master status; ![输入图片说明](image.png) - File:mysql-bin.000009 - Position:438 ## 192.168.128.134(从) 相关设置 ### 1. 进入mysql - mysql -u root -p - 输入密码 ### 2. 停止slave服务 - Stop slave; ### 3. Slave设置参数 - Change master to master_host='192.168.128.132',master_user='slave',master_password='123456',master_log_file='mysql-bin.000009',master_log_pos=438; ### 4. 启动slave服务 - start slave; ![输入图片说明](image2.png) ### 5. Slave检查服务 - show slave status\G ### 6. 启动成功状态 - Slave_IO_Running: Yes - Slave_SQL_Running: Yes ![输入图片说明](image3.png) ## 读写分离调试 ### 1. config/database,设置分布式主从服务器 - 这里需要注意的是:TP6代码只部署在主服务器,从服务器不需要代码 ![输入图片说明](image4.png) ### 2. MYSQL权限设置IP访问 - 宝塔>>数据库>>对应数据库>>权限>>指定ip ![输入图片说明](image5.png) ### 3. 调试代码 - 域名+/behavior/Operate/inquire 查询 - 域名+/behavior/Operate/increase插入 ![输入图片说明](image6.png) ### 4. 调试结果 - 查询 ![输入图片说明](image7.png) - 插入 ![输入图片说明](image8.png)