dbs.php 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <?php
  2. /**
  3. * 分库分表的自定义数据库路由配置
  4. *
  5. * @license http://www.phalapi.net/license GPL 协议
  6. * @link http://www.phalapi.net/
  7. * @author: dogstar <chanzonghuang@gmail.com> 2015-02-09
  8. */
  9. return array(
  10. /**
  11. * DB数据库服务器集群 / database cluster
  12. */
  13. 'servers' => array(
  14. 'db_master' => array( // 服务器标记 / database identify
  15. 'type' => 'mysql', // 数据库类型,暂时只支持:mysql, sqlserver / database type
  16. 'host' => '127.0.0.1', // 数据库域名 / database host
  17. 'name' => 'cloud_mirror_live', // 数据库名字 / database name
  18. 'user' => 'cloud_mirror_live', // 数据库用户名 / database user
  19. 'password' => 'T6jWhMFrnNizZnrA', // 数据库密码 / database password
  20. 'port' => '3306', // 数据库端口 / database port
  21. 'charset' => 'utf8mb4', // 数据库字符集 / database charset
  22. 'pdo_attr_string' => false, // 数据库查询结果统一使用字符串,true是,false否
  23. 'driver_options' => array( // PDO初始化时的连接选项配置
  24. // 若需要更多配置,请参考官方文档:https://www.php.net/manual/zh/pdo.constants.php
  25. ),
  26. ),
  27. ),
  28. /**
  29. * 自定义路由表
  30. */
  31. 'tables' => array(
  32. // 通用路由
  33. '__default__' => array( // 固定的系统标志,不能修改!
  34. 'prefix' => 'cmf_', // 数据库统一表名前缀,无前缀保留空
  35. 'key' => 'id', // 数据库统一表主键名,通常为id
  36. 'keep_suffix_if_no_map' => true, // 当分表未匹配时依然保留数字作为表后缀
  37. 'map' => array( // 数据库统一默认存储路由
  38. array('db' => 'db_master'), // db_master对应前面servers.db_master配置,须对应!
  39. ),
  40. ),
  41. // 单表路由(当某个表的配置或存储或存在分表时,可单独配置,请参考以下示例)
  42. /**
  43. 'demo' => array( // 表名,不带表前缀,不带分表后缀
  44. 'prefix' => '', // 当前的表名前缀
  45. 'key' => 'id', // 当前的表主键名
  46. 'keep_suffix_if_no_map' => true, // 当分表未匹配时依然保留数字作为表后缀
  47. 'map' => array( // 当前的分表存储路由配置
  48. array('db' => 'db_master'), // 单表配置:array('db' => 服务器标记)
  49. array('start' => 0, 'end' => 2, 'db' => 'db_master'), // 三张分表的配置:array('start' => 开始下标, 'end' => 结束下标, 'db' => 服务器标记)
  50. ),
  51. ),
  52. */
  53. ),
  54. );