TiDBの検証を始めました
0から触ってみるので、メモ書きを兼ねて情報共有します。
TiDBを検証してみたいと思ったきっかけは「db tech showcase 2021」のTiDBセッションでした。
PingCAP社の主力製品で、「水平方向の拡張性、強力な一貫性、MySQLとの互換性による高い可用性を備えたオープンソースのハイブリッド・トランザクション/分析処理(HTAP)データベース」と紹介されていました。
ハイブリッド・トランザクション、がとても気になるところです。
早速、まずは検証環境の構築から
検証環境
MacBook Airの貧弱なスペックでも、果たして動いてくれるだろうか
プロセッサ: 1.3 GHz デュアルコアIntel Core i5
メモリ: 4 GB 1600 MHz DDR3
インストール手順
PingCAP社のMacOSデプロイ手順ありました。
- TiUPのダウンロードとインストール
$ curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 6335k 100 6335k 0 0 4342k 0 0:00:01 0:00:01 --:--:-- 4345k
WARN: adding root certificate via internet: https://tiup-mirrors.pingcap.com/root.json
You can revoke this by remove /Users/apple/.tiup/bin/7b8e153f2e2d0928.root.json
Successfully set mirror to https://tiup-mirrors.pingcap.com
Detected shell: bash
Shell profile: /Users/apple/.bash_profile
/Users/apple/.bash_profile has been modified to add tiup to PATH
open a new terminal or source /Users/apple/.bash_profile to use it
Installed path: /Users/apple/.tiup/bin/tiup
===============================================
Have a try: tiup playground
===============================================
2. 環境変数変更を反映
$ source .bash_profile
3. クラスタを起動
TiDBテストクラスタは、通常以下の構成が必要とのことです。
- TiDBインスタンス、二つ
- TiKVインスタンス、三つ
- PDインスタンス、三つ
- TiFlashインスタンス、一つ
$ tiup playground --db 2 --pd 3 --kv 3
いくつかコンポーネントがインストールされ、最後に
CLUSTER START SUCCESSFULLY, Enjoy it ^-^
To connect TiDB: mysql --comments --host 127.0.0.1 --port 4000 -u root -p (no password)
To connect TiDB: mysql --comments --host 127.0.0.1 --port 4001 -u root -p (no password)
To view the dashboard: http://127.0.0.1:2379/dashboard
PD client endpoints: [127.0.0.1:2379 127.0.0.1:2382 127.0.0.1:2384]
To view the Prometheus: http://127.0.0.1:9090
To view the Grafana: http://127.0.0.1:3000
と表示されたら、成功です。
4. TiDBに接続
別端末から、TiUPクライアントをインストールします。
$ tiup client
エンドポイント選択画面で、4000を選択しました。
Choose a endpoint to connect
SqO0bRV mysql://root@127.0.0.1:4000
SqO0bRV mysql://root@127.0.0.1:4001
おっと、mysqlと表示されたので、きっとMySQLと親和性高そうです。
試しに、showコマンド実行してみると
my:root@127.0.0.1:4000=> show databases;
Database
--------------------
INFORMATION_SCHEMA
METRICS_SCHEMA
PERFORMANCE_SCHEMA
mysql
test
(5 rows)
終わりに
ブログ記事書きながらインストールしていましたが、サクッとインストール終わった感じでした。
次回は各種機能を触ってみようと思います。ワクワクしますね、お楽しみに。