• phpcms v9 数据库分离部署


    v9数据模型功能,允许用户把不同的数据表,分离到不同的数据库服务器上。以实现负载的分离,更加的符合大访问网站的需求。 

    <ignore_js_op>



    数据分离方法

    1.数据库连接配置
    配置文件路径:cachesconfigsdatabase.php
    1. return array (     
    2.   'default' => array (         
    3.     'hostname' => 'localhost',         
    4.     'database' => 'phpcmsv9',         
    5.     'username' => 'admin',         
    6.     'password' => 'admin',         
    7.     'tablepre' => 'v9_',         
    8.     'charset' => 'gbk',         
    9.     'type' => 'mysql',         
    10.     'debug' => true,         
    11.     'pconnect' => 0,         
    12.     'autoconnect' => 0         
    13.   ),     
    14. /*可以根据自己需求设置多个数据库链接配置*/    
    15.   'link1' => array (         
    16.     'hostname' => 'localhost',         
    17.     'database' => 'comment',         
    18.     'username' => 'admin',         
    19.     'password' => 'admin',         
    20.     'tablepre' => 'v9_',         
    21.     'charset' => 'gbk',         
    22.     'type' => 'mysql',         
    23.     'debug' => true,         
    24.     'pconnect' => 0,         
    25.     'autoconnect' => 0         
    26.   ),     
    27.   'link2' => array (         
    28.     'hostname' => 'localhost',         
    29.     'database' => 'workflow',         
    30.     'username' => 'admin',         
    31.     'password' => 'admin',         
    32.     'tablepre' => 'v9_',         
    33.     'charset' => 'gbk',         
    34.     'type' => 'mysql',         
    35.     'debug' => true,         
    36.     'pconnect' => 0,         
    37.     'autoconnect' => 0         
    38.   ),           
    39. );

    2.数据模型配置

    配置文件路径:phpcmsmodel中所有文件

    该目录下所有*_model.class.php都是数据模型文件

    例如:workflow_model.class.php

    1. defined('in_phpcms') or exit('no permission resources.'); 
    2. pc_base::load_sys_class('model', '', 0); 
    3. class workflow_model extends model { 
    4. public function __construct() {     
    5.     $this->db_config = pc_base::load_config('database');     
    6.     $this->db_setting = 'link2'; //可以通过修改db_setting设置该数据表所链接的数据库服务器     
    7.     $this->table_name = 'workflow';     
    8.     parent::__construct(); 
    9. }
    10. }
  • 相关阅读:
    Huffman树与编码
    Python引用复制,参数传递,弱引用与垃圾回收
    Git使用说明
    numpy使用指南
    Python Socket
    温故知新之 数据库的事务、隔离级别、锁
    Oracle数据库的语句级读一致性
    VirtualBox NAT方式与主机互相通信
    Linux的定时任务
    Redis学习
  • 原文地址:https://www.cnblogs.com/semcoding/p/3358777.html
Copyright © 2020-2023  润新知