jdbc连接mysql数据库代码,mysql读写分离什么软件好
另一方面,如果配置数据库的主从隔离是数据存储和访问,则通常需要配置和修改代码,而不涉及mysql的安装
二.主服务器主服务器配置
1. vim /etc/my.cnf
2 .重新启动服务服务mysqld restart
3 .创建用户
4 .授予用户的权限(mysql用户密码) ) ) ) ) ) ) ) )。
三.从服务器配置slaver
进入my.cnf下的vim /etc/my.cnf
重新启动MySQL服务的另一种方法:
3 .连接主机
4 .从库中显示同步状态
意识到有错误
解决:
停止从属主同步
vim /etc/my.cnf
搜索服务器- id时,默认情况下设置了配置文件,因此必须删除文件本身的默认设置
重新启动服务
打开主从同步启动板
看状态:我意识到已经没有错误了
四.码层读写分离
从阅读时到从数据库阅读,从修改时到修改为主数据库
1 .创建包
2 .配置抽象路由数据源动态数据源
package com.it Wang.o2o.Dao.split; importorg.spring framework.JDBC.data source.lookup.abstractroutingdatasource;
//抽象路由数据源publicclassdynamicdatasourceextendsabstractroutingdatasource {
@ overrideprotectedobjectdeterminecurrentlookupkey ((returndynamicdatasourceholder.get dbtype );
}
}
配置动态数据源文件夹
package com.it Wang.o2o.Dao.split; importorg.slf4j.Logger; importorg.slf4j.LoggerFactory; publicclassdynamicdatasourceholder { privatestaticloggerlogger=logger factory.getlogger (dynamicdatasourceholder.class }
私有testaticthreadlocalcontextholder=new thread local (; publicstaticfinalstringdb _ master=' master '; publicstaticfinalstringdb _ slave=' slave '; /**获取线程DBType
*@return
*/
公共静态获取数据库类型
String db=contextHolder.get (; if(db==null ) {
db=DB_MASTER;
}返回数据库;
}/***设置线程DBType
*@paramstr*/
publicstaticvoidsetdbtype{
logger.debug ('要使用的数据源为' str );
上下文保持件. set (str;
}/* * *清空thread local对象*/
公共静态语音客户端类型
contextHolder.remove (;
}
}
配置mybatis拦截器、DynamicDataSourceInterceptor
package com.it Wang.o2o.Dao.split; importorg.slf4j.Logger; importorg.slf4j.LoggerFactory; publicclassdynamicdatasourceholder { privatestaticloggerlogger=logger factory.getlogger (dynamicdatasourceholder.class }
私有testaticthreadlocalcontextholder=new thread local (; publicstaticfinalstringdb _ master=' master '; publicstaticfinalstringdb _ slave=' slave '; /**获取线程DBType
*@return
*/
公共静态获取数据库类型
String db=contextHolder.get (; if(db==null ) {
db=DB_MASTER;
}返回数据库;
}/***设置线程DBType
*@paramstr*/
publicstaticvoidsetdbtype{
logger.debug ('要使用的数据源为' str );
上下文保持件. set (str;
}/* * *清空thread local对象*/
公共静态语音客户端类型
contextHolder.remove (;
}
}
配置SqlMapConfig.xml
/p
public '-//my batis.org//dtd config 3.0//en '
' http://my batis.org/dtd/my batis-3-config.dtd '
6 .配置Dao层数据源配置文件
6.1原始配置
6.2更改后的配置
7 .配置数据库参数文件以配置db.properties (在本例中,与主从设备配置的测试方式相同) )。
JDBC.driver=com.MySQL.JDBC.driver
JDBC.master.URL=JDBC : MySQL ://localhost 33603306/o2o? xsdby=UTF-8
JDBC.slave.URL=JDBC : MySQL ://localhost 33603306/o2o? xsdby=UTF-8
jdbc.username=root
jdbc.password=root