CentOS6.4简单配置Cobar

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 最小化安装CentOS6.4 关闭iptables和SELINUX 1、安装JDK,官方推荐JDK1.6 http://pan.baidu.com/share/link?shareid=453362&uk=1829018343 mkdir /usr/java 将jdk-6u43-linux-x64-rpm.

最小化安装CentOS6.4

关闭iptables和SELINUX

1、安装JDK,官方推荐JDK1.6

http://pan.baidu.com/share/link?shareid=453362&uk=1829018343

mkdir /usr/java

将jdk-6u43-linux-x64-rpm.bin上传到/usr/java

chmod 777 jdk-6u43-linux-x64-rpm.bin

./jdk-6u43-linux-x64-rpm.bin

设置环境变量

vi /etc/profile

在文件最后添加下面内容

JAVA_HOME=/usr/java/jdk1.6.0_43
JRE_HOME=/usr/java/jdk1.6.0_43/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH

使修改立即生效 

source /etc/profile

2、安装mysql,为了方便用yum进行安装

yum -y install mysql mysql-server

启动mysql

service mysqld start

设置用户

mysqladmin -u root password 'dsideal'

连接mysql设置权限

GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "dsideal";

flush privileges;

3、创建测试数据库

#创建dbtest1
create database dbtest1;
use dbtest1;
#在dbtest1上创建tb1
create table tb1(id int not null, gmt   datetime);
#创建dbtest2
create database dbtest2;
use dbtest2;
#在dbtest2上创建tb2
create table tb2(id int not null, val varchar(256));  
#创建dbtest3
create database dbtest3;
use dbtest3;
#在dbtest3上创建tb2
create table tb2(id int not null, val varchar(256));

4、安装和配置Cobar

http://pan.baidu.com/share/link?shareid=453387&uk=1829018343

tar zxvf cobar-server-1.2.7.tar.gz

cd cobar-server-1.2.7

schema.xml配置如下(注意:schema.xml包含MySQL的IP、端口、用户名、密码等配置,您需要按照注释替换为您的MySQL信息。)

vi conf/schema.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE cobar:schema SYSTEM "schema.dtd"> 
<cobar:schema xmlns:cobar="http://cobar.alibaba.com/">
    <!-- schema定义 -->
    <schema name="dbtest" dataNode="dnTest1">
        <table name="tb2" dataNode="dnTest2,dnTest3" rule="rule1" />
    </schema>
    <!-- 数据节点定义,数据节点由数据源和其他一些参数组织而成。-->
    <dataNode name="dnTest1">
        <property name="dataSource">
            <dataSourceRef>dsTest[0]</dataSourceRef>
        </property>
    </dataNode>
    <dataNode name="dnTest2">
        <property name="dataSource">
            <dataSourceRef>dsTest[1]</dataSourceRef>
        </property>
    </dataNode>
    <dataNode name="dnTest3">
        <property name="dataSource">
            <dataSourceRef>dsTest[2]</dataSourceRef>
        </property>
    </dataNode>
    <!-- 数据源定义,数据源是一个具体的后端数据连接的表示。-->
    <dataSource name="dsTest" type="mysql">
        <property name="location">
            <location>10.10.3.154:3306/dbtest1</location> <!--注意:替换为您的MySQL IP和Port-->
            <location>10.10.3.154:3306/dbtest2</location> <!--注意:替换为您的MySQL IP和Port-->
            <location>10.10.3.154:3306/dbtest3</location> <!--注意:替换为您的MySQL IP和Port-->
        </property>
        <property name="user">test</property> <!--注意:替换为您的MySQL用户名-->   
        <property name="password"></property> <!--注意:替换为您的MySQL密码-->    
        <property name="sqlMode">STRICT_TRANS_TABLES</property>  <!--连接的SQL模式-->
    </dataSource>
</cobar:schema>

 rule.xml配置如下(本文仅以数字类型的id字段作为拆分字段,将数据拆分到两个库中。)

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE cobar:rule SYSTEM "rule.dtd">
<cobar:rule xmlns:cobar="http://cobar.alibaba.com/">
    <!-- 路由规则定义,定义什么表,什么字段,采用什么路由算法。-->
    <tableRule name="rule1">
        <rule>
            <columns>id</columns> 
            <algorithm><![CDATA[ func1(${id})]]></algorithm> 
        </rule>
    </tableRule>
    <!-- 路由函数定义,应用在路由规则的算法定义中,路由函数可以自定义扩展。-->
    <function name="func1" class="com.alibaba.cobar.route.function.PartitionByLong">
        <property name="partitionCount">2</property>
        <property name="partitionLength">512</property>
    </function>
</cobar:rule>

server.xml配置如下

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE cobar:server SYSTEM "server.dtd">
<cobar:server xmlns:cobar="http://cobar.alibaba.com/">
    <!--定义Cobar用户名,密码-->
    <user name="test">
    <property name="password">test</property>
    <property name="schemas">dbtest</property>
    </user>
</cobar:server>

启动Cobar

./bin/startup.sh

查看logs目录下stdout.log, 启动成功日志如下

cat logs/stdout.log

23:49:49,183 INFO  ===============================================
23:49:49,193 INFO  Cobar is ready to startup ...
23:49:49,193 INFO  Startup processors ...
23:49:49,434 INFO  Startup connector ...
23:49:49,445 INFO  Initialize dataNodes ...
23:49:49,893 INFO  dnTest1:0 init success
23:49:50,103 INFO  dnTest3:0 init success
23:49:50,293 INFO  dnTest2:0 init success
23:49:50,326 INFO  CobarManager is started and listening on 9066
23:49:50,335 INFO  CobarServer is started and listening on 8066
23:49:50,336 INFO  ===============================================

访问Cobar同访问MySQL的方式完全相同, 常用访问方式如下

mysql -utest -ptest -P8066 -Ddbtest

用户名、密码和库都在server.xml配置文件中配置过

#JDBC(建议5.1以上的mysql driver版本)

Class.forName("com.mysql.jdbc.Driver");

Connection conn = DriverManager.getConnection("jdbc:mysql://10.10.3.154:8066/dbtest", "test", "test");

SQL执行示例,执行语句时与使用传统单一数据库无区别

insert into tb1 (id, gmt) values (1, now()); 
insert into tb2 (id, val) values (1, "part1");
insert into tb2 (id, val) values (2, "part1"), (513, "part2");

对于dbtest来说数据是全的

而对dbtest2和dbtest2来说就是被分割过的。

详细的文档访问

http://code.alibabatech.com/wiki/pages/viewpage.action?pageId=7671478

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
5月前
|
应用服务中间件 Linux 网络安全
Centos 8.0中Nginx配置文件和https正书添加配置
这是一份Nginx配置文件,包含HTTP与HTTPS服务设置。主要功能如下:1) 将HTTP(80端口)请求重定向至HTTPS(443端口),增强安全性;2) 配置SSL证书,支持TLSv1.1至TLSv1.3协议;3) 使用uWSGI与后端应用通信(如Django);4) 静态文件托管路径设为`/root/code/static/`;5) 定制错误页面(404、50x)。适用于Web应用部署场景。
635 87
|
3月前
|
存储 Linux Apache
在CentOS上配置SVN至Web目录的自动同步
通过上述配置,每次当SVN仓库中提交新的更改时,`post-commit`钩子将被触发,SVN仓库的内容会自动同步到指定的Web目录,从而实现代码的连续部署。
149 16
|
3月前
|
NoSQL 安全 Linux
设置Redis在CentOS7上的自启动配置
这些步骤总结了在CentOS 7系统上设置Redis服务自启动的过程。这些命令提供了一个直接且明了的方式,确保Redis作为关键组件在系统启动时能自动运行,保障了依赖于Redis服务的应用的稳定性和可用性。
393 9
|
5月前
|
Linux
Centos6配置阿里云yum源报错
在CentOS 6配置阿里云Yum源时,可能出现EPEL仓库访问报错(404 Not Found)。解决方法:编辑`/etc/yum.repos.d/epel.repo`文件,将`enabled`和`gpgcheck`参数设为0 ``` 此设置可解决仓库无法访问的问题。
1317 29
|
5月前
|
Ubuntu 安全 Linux
CentOS与Ubuntu中防火墙配置命令集汇
有了这些,你就能遨游在 CentOS 和 Ubuntu 的海洋中,频繁地改变你的防火墙设置,快速地应对各种安全威胁,同时也能保证你的系统可以正常工作。出发吧,勇敢的编程者,随着这些命令集的涌动,扬帆起航,走向安全的网络世界!
165 5
|
6月前
|
关系型数据库 MySQL Linux
CentOS 7系统下详细安装MySQL 5.7的步骤:包括密码配置、字符集配置、远程连接配置
以上就是在CentOS 7系统下安装MySQL 5.7的详细步骤。希望这个指南能帮助你顺利完成安装。
1478 26
|
12月前
|
Linux 网络安全 Apache
CentOS 7.2配置Apache服务httpd(上)
CentOS 7.2配置Apache服务httpd(上)
716 1
|
6月前
|
安全 Linux 网络安全
在Linux(CentOS和AWS)上安装更新的git2的方法并配置github-ssh
经过以上这些步骤,你现在就能在GitHub上顺利往返,如同海洋中的航海者自由驰骋。欢迎你加入码农的世界,享受这编程的乐趣吧!
228 10
|
9月前
|
Java
CentOS7.8配置Adoptium-Java17运行环境
本指南介绍如何设置清华镜像源并安装 Temurin-17-JRE 运行环境。首先,编辑 `/etc/yum.repos.d/adoptium.repo` 文件,配置清华镜像源。接着,使用 `yum install -y temurin-17-jre` 命令安装 Temurin-17-JRE,并通过 `java --version` 验证安装成功。相关配置和操作界面截图附后。
271 8