Linux上从mongoDB中定时导出数据脚本
目标:编写一个shell脚本,以便能够将mongoDb中的数据导出成为csv格式的文件。要求:1. 为了避免导出巨量数据,仅需要过滤出当月
目标:编写一个shell脚本,,以便能够将mongoDb中的数据导出成为csv格式的文件。
要求:
1. 为了避免导出巨量数据,仅需要过滤出当月数据和上个月的数据即可。
2. 由于当天的数据是不完整的,所以需要排除当天的数据
以下是一个例子
--------------------------------------------------------------------------
#!/bin/bash
#创建保存目录
mypath=micAnalyDir/`date +%Y/%m%d`
mkdir -p $mypath
#计算过滤时间
baseDate=`date --date '1 months ago' +'%m/01/%Y'`
echo $baseDate
declare -i baseTime
baseTime=$((`date --date "$baseDate" +"%s"` * 1000))
#导出指定数据表中的数据
function exportData() {
exportCmd="/kingdee/mongodb/bin/mongoexport --csv"
if [ $# -gt 3 ]; then
#这里要注意baseTime和endTime不能加引号,否则会报错
$exportCmd -d $1 -c $2 -f $3 -q \
"{\"$4\":{\"\$gte\":{\"\$date\":$baseTime}, \
\"\$lt\":{\"\$date\":$endTime}}}" -o $mypath/$2.csv
else
$exportCmd -d $1 -c $2 -f $3 -o $mypath/$2.csv
fi
}
#导出第一张表的所有数据
echo export data from $baseDate
echo 'export ossDev.T_User'
fields="_id,email,registerDate,photoId"
exportData "ossDev" "T_User" $fields
#导出第二张表的sendTime为当月和上月的数据
echo 'export snsDev.T_Comment'
fields="_id,del,from,mbId,mbOwner,nwId,ownerId,sendTime"
exportData "snsDev" "T_Comment" $fields "sendTime"
----------------------------------------------------------------------------
保存为.sh文件后使用 chmod +x 将该脚本设置为可执行,然后使用crontab命令将脚本加到定时任务当中

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











最新の機能と改善が提供される MongoDB の最新バージョン (現在 5.0) を使用することをお勧めします。バージョンを選択するときは、機能要件、互換性、安定性、コミュニティ サポートを考慮する必要があります。たとえば、最新バージョンにはトランザクションや集計パイプラインの最適化などの機能が備わっています。バージョンがアプリケーションと互換性があることを確認してください。運用環境の場合は、長期サポート バージョンを選択してください。最新バージョンでは、より積極的なコミュニティサポートが提供されています。

Node.js はサーバー側の JavaScript ランタイムであり、Vue.js は対話型ユーザー インターフェイスを作成するためのクライアント側の JavaScript フレームワークです。 Node.js はバックエンド サービス API 開発やデータ処理などのサーバー側開発に使用され、Vue.js はシングルページ アプリケーションや応答性の高いユーザー インターフェイスなどのクライアント側開発に使用されます。

インターネットの発展に伴い、人々の生活はますますデジタル化し、パーソナライゼーションへの要求はますます強くなっています。この情報爆発の時代では、ユーザーは大量の情報に直面し、選択肢がないことが多いため、リアルタイムのレコメンデーション システムの重要性がますます高まっています。この記事では、開発者にインスピレーションと支援を提供することを目的として、MongoDB を使用してリアルタイム レコメンデーション システムを実装した経験を共有します。 1. MongoDB の概要 MongoDB は、高性能、容易なスケーラビリティ、および柔軟なデータ モデルで知られるオープン ソースの NoSQL データベースです。伝記と比べて

MongoDB データベースのデータは、ローカル ファイル システム、ネットワーク ファイル システム、またはクラウド ストレージに配置できる指定されたデータ ディレクトリに保存されます。具体的な場所は次のとおりです: ローカル ファイル システム: デフォルトのパスは Linux/macOS: /data/db、Windows: C:\data\db。ネットワーク ファイル システム: パスはファイル システムによって異なります。クラウド ストレージ: パスはクラウド ストレージ プロバイダーによって決定されます。

MongoDB データベースは、その柔軟性、スケーラビリティ、および高いパフォーマンスで知られています。その利点には、データを柔軟かつ非構造化された方法で保存できるドキュメント データ モデルが含まれます。シャーディングによる複数サーバーへの水平スケーラビリティ。クエリの柔軟性により、複雑なクエリと集計操作をサポートします。データ レプリケーションとフォールト トレランスにより、データの冗長性と高可用性が確保されます。 JSON サポートにより、フロントエンド アプリケーションと簡単に統合できます。大量のデータを処理する場合でも高速な応答を実現する高いパフォーマンス。オープンソースでカスタマイズ可能で無料で使用できます。

MongoDB は、大量の構造化データと非構造化データを保存および管理するために使用されるドキュメント指向の分散データベース システムです。その中心的な概念にはドキュメントのストレージと配布が含まれ、その主な機能には動的スキーマ、インデックス作成、集約、マップリデュース、レプリケーションが含まれます。コンテンツ管理システム、電子商取引プラットフォーム、ソーシャル メディア Web サイト、IoT アプリケーション、モバイル アプリケーション開発で広く使用されています。

MongoDB データベース ファイルは、MongoDB データ ディレクトリにあります。デフォルトでは /data/db です。このディレクトリには、.bson (ドキュメント データ)、ns (コレクション情報)、journal (書き込み操作レコード)、wiredTiger (WiredTiger 使用時のデータ) が含まれています。ストレージ エンジン ) および config (データベース構成情報) およびその他のファイル。

Linux/macOS の場合: データ ディレクトリを作成し、「mongod」サービスを開始します。 Windows の場合: データ ディレクトリを作成し、Service Manager から MongoDB サービスを開始します。 Docker の場合: 「docker run」コマンドを実行します。他のプラットフォームの場合: MongoDB のドキュメントを参照してください。確認方法: 「mongo」コマンドを実行して接続し、サーバーのバージョンを確認します。
