ThinkPHP 是否支持分布式数据库 ThinkPHP内置支持分布式数据库的定义和查询,包括读写分离。可以参考如下的项目配置: 项目配置文件里面定义 Return array( 'DB_DEPLOY_TYPE '=>1, // 启用分布式数据库支持'DB_RW_SEPARATE'=>true, // 'DB_TYPE'=> 'mysql', // 分布式数据库的类型必须相同 'DB_HOST'=> ',', // 第一个ip地址是主服务器的,后面是从的。分布式数据库的地址'DB_NAME'=>'thinkphp', // 如果相同可以不用定义多个'DB_USER'=>'user1,user2', 'DB_PWD'=>'pwd1,pwd2', 'DB_PORT'=>'3306','DB_PREFIX'=>'think_', …… 其它项目配置参数 ); user可以用同样的用户名密码,这样只需要填写一个,不过注意要授权。但是数据库的同步不是由框架自动完成,应该交给数据库本身来实现。 下面是一些配置文件的注释:<?phpreturnarray( //'配置项'=>'配置值' 'DEFAULT_THEME' =>'default',//默认模板主题名称 //'TEMPLATE_CHARSET'=>'gb2312',//模板模板编码 //'OUTPUT_CHARSET'=>'gb2312',//默认输出编码 //'DB_CHARSET'=>'gb2312', //数据库编码默认采用utf8 /*数据库设置*/ 'DB_TYPE' =>'pdo', //数据库类型 //'DB_HOST' =>'localhost',//服务器地址 'DB_HOST' =>'',//服务器地址 'DB_NAME' =>'WZCenter', //数据库名 //'DB_DSN'=>'mssql:host=;dbname=', 'SHOW_PAGE_TRACE'=>1, //'DB_DSN'=>'mssql:host=localhost;dbname=', 'DB_DSN'=>'sqlsrv:server=;Database=';', 'DB_USER' =>'sa', //用户名 'DB_PWD' =>'110110', //密码 //'DB_PORT' =>'1433', //端口 'DB_PORT' =>'', //端口 'DB_PREFIX' =>'', //数据库表前缀 'DB_SUFFIX' =>'', //数据库表后缀 'DB_CHARSET'=>'gb2312', 'DB_PARAMS'=>'', 'DB_FIELDTYPE_CHECK' =>true, //是否进行字段类型检查 'DB_FIELDS_CACHE'
thinkphp-读写分离 来自淘豆网m.daumloan.com转载请标明出处.