千家信息网

TiDB 分布式数据库(二)

发表于:2024-10-11 作者:千家信息网编辑
千家信息网最后更新 2024年10月11日,## TiDB :A Distributed SQL Database# github :https://github.com/pingcap/tidb# doc : https://github.c
千家信息网最后更新 2024年10月11日TiDB 分布式数据库(二)


#

# TiDB :A Distributed SQL Database

# github :https://github.com/pingcap/tidb

# doc : https://github.com/pingcap/docs-cn

#


#架构

Name
Host IPServices
node1192.168.174.134
PD, TiDB
node2192.168.174.136TiKV1
node3192.168.174.137TiKV2
node4192.168.174.138TiKV3


#软件下载(每台都需操作)

[root@node1 ~]# wget http://download.pingcap.org/tidb-latest-linux-amd64.tar.gz[root@node1 ~]# tar -xf tidb-latest-linux-amd64.tar.gz -C /usr/local/[root@node1 ~]# mkdir /data/tidb/{data,log} -p


#开启服务(注:集群的启动顺序不能错)

#在node1开启PD

[root@node1 ~]# /usr/local/tidb-latest-linux-amd64/bin/pd-server --name=pd1   \--data-dir=/data/tidb/data    --client-urls="http://192.168.174.134:2379"  \--peer-urls="http://192.168.174.134:2380"  --initial-cluster="pd1=http://192.168.174.134:2380"   \--log-file=/data/tidb/log/pd.log &


参数解释:https://github.com/pingcap/docs-cn/blob/master/op-guide/configuration.md#tidb


#在node2 node3 node4 上开启 TiKV

[root@node2 ~]# /usr/local/tidb-latest-linux-amd64/bin/tikv-server --pd="192.168.174.134:2379"  --addr="192.168.174.136:20160"  --data-dir=/data/tidb/data --log-file=/data/tidb/log/tikv.log & [root@node3 ~]# /usr/local/tidb-latest-linux-amd64/bin/tikv-server --pd="192.168.174.134:2379"  --addr="192.168.174.137:20160"  --data-dir=/data/tidb/data --log-file=/data/tidb/log/tikv.log &[root@node4 ~]# /usr/local/tidb-latest-linux-amd64/bin/tikv-server --pd="192.168.174.134:2379"  --addr="192.168.174.138:20160"  --data-dir=/data/tidb/data --log-file=/data/tidb/log/tikv.log &


参数解释:https://github.com/pingcap/docs-cn/blob/master/op-guide/configuration.md#tidb



#在node1 上开启TiDB

[root@node1 ~]# /usr/local/tidb-latest-linux-amd64/bin/tidb-server --store=tikv --path="192.168.174.134:2379" --log-file=/data/tidb/log/tidb.log &


#登陆数据库

[root@node1 ~]# yum install -y mariadb                        #安装mariadb数据库客户端[root@node1 ~]# mysql -uroot -h 192.168.174.134 -P 4000Welcome to the MariaDB monitor.  Commands end with ; or \g.Your MySQL connection id is 2Server version: 5.7.1-TiDB-1.0 MySQL Community Server (GPL)Copyright (c) 2000, 2015, Oracle, MariaDB Corporation Ab and others.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.MySQL [(none)]> show databases;+--------------------+| Database           |+--------------------+| INFORMATION_SCHEMA || PERFORMANCE_SCHEMA || mysql              || test               |+--------------------+4 rows in set (0.00 sec)MySQL [(none)]> select host,user from mysql.user ;+------+------+| host | user |+------+------+| %    | root |+------+------+1 row in set (0.00 sec)MySQL [(none)]> exitBye



#集群状态


TiDB 对外暴露的 HTTP 接口是 http://host:port/status,默认的端口号是 10080 (可以通过 --status 参数设置),

可以通过访问这个接口获取当前 TiDB Server 的状态,以及判断是否存活。返回结果是 Json 格式:

[root@node1 ~]# curl 192.168.174.134:10080/status{"connections":0,"version":"5.7.1-TiDB-1.0","git_hash":"d6ec37bb4219e95babce41bd0400d04d84b1fb88"}



PD Server

PD API 地址: http://${host}:${port}/pd/api/v1/${api_name}

其中 port 默认为 2379,各类 api_name 详细信息参见

https://cdn.rawgit.com/pingcap/docs/master/op-guide/pd-api-v1.html

[root@node1 ~]# curl 192.168.174.134:2379/pd/api/v1/stores{  "count": 3,  "stores": [    {      "store": {        "id": 1,        "address": "192.168.174.138:20160",        "state": 0,        "state_name": "Up"      },      "status": {        "store_id": 1,        "capacity": "19 GB",        "available": "17 GB",        "leader_count": 1,        "region_count": 1,        "sending_snap_count": 0,        "receiving_snap_count": 0,        "applying_snap_count": 0,        "is_busy": false,        "start_ts": "2017-05-13T03:16:51+08:00",        "last_heartbeat_ts": "2017-05-13T03:23:58.709890548+08:00",        "uptime": "7m7.709890548s"      }    },    {      "store": {        "id": 4,        "address": "192.168.174.137:20160",        "state": 0,        "state_name": "Up"      },      "status": {        "store_id": 4,        "capacity": "19 GB",        "available": "16 GB",        "leader_count": 0,        "region_count": 1,        "sending_snap_count": 0,        "receiving_snap_count": 0,        "applying_snap_count": 0,        "is_busy": false,        "start_ts": "2017-05-12T18:17:02+08:00",        "last_heartbeat_ts": "2017-05-13T03:24:00.555315502+08:00",        "uptime": "9h7m58.555315502s"      }    },    {      "store": {        "id": 5,        "address": "192.168.174.136:20160",        "state": 0,        "state_name": "Up"      },      "status": {        "store_id": 5,        "capacity": "16 GB",        "available": "13 GB",        "leader_count": 0,        "region_count": 1,        "sending_snap_count": 0,        "receiving_snap_count": 0,        "applying_snap_count": 0,        "is_busy": false,        "start_ts": "2017-05-12T18:17:02+08:00",        "last_heartbeat_ts": "2017-05-13T03:23:56.955220422+08:00",        "uptime": "9h7m54.955220422s"      }    }  ]}[root@node1 ~]#










参数 数据 数据库 可以通过 接口 状态 集群 解释 信息 口号 地址 客户 客户端 架构 格式 结果 软件 软件下载 顺序 对外 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 电信服务器中标份额 网络技术选择题可以多次进入吗 会计购买服务器托盘分录 数据库工程师考核标准 厦门应用软件开发公司 数据库中查询某字段的记录 杨浦区技术软件开发大概费用 nasa怎么批量下数据库 台州领策网络技术有限公司 银川市网络安全应急中心 创建会员管理数据库 软件开发转汽车制造 中国电信网络技术面试问题 万方数据库算查重嘛 济南商中网络技术有限公司简介 软件开发后期发展路线 宝山区互联网软件开发厂家要求 谷歌 免费服务器训练 mys人员数据库表 网络安全法 个人怎么做 顶库互联网科科技公司 云 网络安全规程 我们应该如何保护网络安全 三年软件开发工作经验 网络安全人机交互编程语言 攻城掠地服务器维护要多久 科研数据库软件有哪些方面 软件开发主管绩效考评 pubg未来之役怎么样换服务器 山东办公oa软件开发公司
0