TiDB Cloudのデータエクスポート方法をまとめてみた
こんにちは、ゲームソリューション部のsoraです。
今回は、TiDB Cloudのデータエクスポート方法をまとめてみたことについて書いていきます。
エクスポート方法
データのエクスポート方法として、以下3種類を挙げます。
- Dumplingでのエクスポート
- TiDB Cloudのエクスポート機能(ベータ版)
- mysqldumpでのエクスポート
TSO(TiDBのタイムスタンプ)を指定して取得できたり、TiDBに最適化されていることから、Dumpling が良いと思います。
TiDB Cloudのエクスポート機能(ベータ版) は、TiDB Cloudの画面から手軽にエクスポートできるという点で良いと思います。
Dumplingでのエクスポート
データエクスポートツールであるDumplingを使用してエクスポートする方法です。
TiDBに対して最適化が行われているツールであるため、基本的にはこの方法が良いと思います。
TSO(TiDBのタイムスタンプ)を指定してのデータ取得も可能です。
弊社にもやってみたブログがあるので、詳細はそちらをご確認ください。
TiDB Cloudのエクスポート機能(ベータ版)
TiDB Cloudの画面にて利用可能な方法で、TiDB Cloud CLIを使用してローカルにエクスポートしたり、IAMロールやアクセスキーを使用してS3にエクスポートすることができます。
Serverlessクラスタのみで利用可能な方法であり、現在ベータ版として提供されています。
ローカルにエクスポートする場合は、TiDB Cloud CLIのインストールが必要なものの、エクスポート時のコマンドは表示されて実行するだけのため、手軽に利用することができました。
弊社にもやってみたブログがあるので、詳細はそちらをご確認ください。
mysqldumpでのエクスポート
こちらはあまり使用することはないと思いますが、TiDBはMySQL互換なこともあり、MySQLで使用されるmysqldump
を使用することも可能です。
ただし、可能であればTiDBに最適化されているという点で Dumpling を使用する方が良いです。
実際にAmazon Linux 2023のEC2インスタンスからTiDB Cloudに対してmysqldump
を試してみると、データをエクスポートすることができました。
# mysql-clientのインストール
sudo dnf -y localinstall https://dev.mysql.com/get/mysql84-community-release-el9-1.noarch.rpm
sudo dnf -y install mysql-community-client
# mysqldumpの実行
mysqldump -u xxxxxxxxxxxxxxx.root -P 4000 -pxxxxxxxxxxxxxxxx -h gateway01.ap-northeast-1.prod.aws.tidbcloud.com database_name table_name > output.csv
最後に
今回は、TiDB Cloudのデータエクスポート方法をまとめてみたことを記事にしました。
どなたかの参考になると幸いです。