問題タブ [exasol]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Pythonとbashを介してExasolデータベースに接続するためのSSHトンネル転送
事情を説明して最後に質問します。
仕事用のコンピューター、Mac を持っています。この Mac では、次のコマンドが保存されています。
ssh -n -f -T -N -L {port} {server IP} {email} -i {path to secret RSA key}
(中括弧は、そこに何があるかを知らせるためのものです)
そのコマンドを実行して ssh トンネルを開始する必要があり、秘密の RSA キーを取得できるように bash のパスワードを指定する必要があります。
次に、DBeaver を開き、資格情報を使用して Exasol データベースに接続し、127.0.0.1
(ポートはデフォルトでホーム IP に転送されるように) 入力し、bash コマンドで指定された同じポートを使用します。
与えられたすべてのデータのリストは次のとおりです。
- サーバーポート (= どうやら私のコンピューターにもトンネルポート)
- サーバー IP
- メール (myuser@serverdomain.sthg だと思います)
- RSA キーを含むファイルへのキー
127.0.0.1
、Exasol データベースへの接続に使用する IP として- サーバーポート。これは上記のものと同じです
- データベースのユーザー
- データベースのそのユーザーのパスワード
この DWH から定期的にデータを取得するプログラムを展開したいと考えています。私には2つのアイデアがありました:
- Pythonですべてを行います。
今、私はプログラムを書くためにparamiko、sshtunnel、pyexasol(pythonライブラリ)を使いたいと思っていますが、私の人生ではスタックオーバーフローの投稿をたくさん読んで、sshトンネル変数の非常に多くの組み合わせを試しました。そして、pyexasol が新しい一見孤立した停滞したプロジェクトであることは助けにはならないので、そこで ssh を実行することはできません。
- bash を実行してそのコマンドを実行する docker コンテナーをデプロイし、bash 自体または python プログラムを使用してデータベースに接続し、データを取得します。
しかし、私はネットワーク アーキテクチャと、これがどのように機能するかについてほとんど知りません。
質問1:
私たちを手伝ってくれますか:
sshtunnel を使用して ssh トンネルを開くコード付き
または、Dockerでこれを行う方法のアイデアを持って
質問2:
これを展開することさえ可能ですか?または、サーバーがそれを受け入れるために、sshトンネル転送がこの特定のコンピューターから来る必要がありますか?
これをすべて読んでくれてありがとう!
python - 辞書値文字列から引用符を動的に削除する方法
次のような辞書がありますd = {'table': 'db_schema.foo', 'column': 'bar'}
。すべての値から引用符を削除した後、この辞書を渡したいです。{'table': db_schema.foo, 'column': bar}
だから私は動的に取得したい。
詳細:
接続後に動的クエリの実行を exasol に渡そうとしています。ここでpyexasolを使用して試していexecute()
ます。次のような単純なクエリを実行しようとしています:
辞書を提供するd
と、実行されるクエリは次のようになります。
となり、エラーになります。したがって、すべての値から引用符を削除したいと思います。などを試し{k:v.strip("\'") for k, v in d.items()}
ましたが、まだ成功していません。
要求されたコード:
ここで、exasol は、接続パラメーターのみを使用して pyexasol で構築されたクラスです。そこにあるクラスからの関連メソッド:
どちらの場合も、同じエラーが発生します:
mysql - Exasol の相関サブクエリ
Exasol データベースで SQL を使用してサブクエリを作成しようとしています。問題はこのスレッド ( SQL クエリ - 日付以下での結合) に似ており、コードは mysql と postgres でうまく機能します。ただし、コードを Exasol に移動すると、SQL エラー 42000: 相関が on 句に表示されます。この問題に対する別の解決策があるのだろうか、または Exasol でどのように修正できますか?
exasolution - Exasol DB でのトリガー
exasolDB でトリガーの機能をシミュレートする方法は? お気に入り:
sql - Exasol の 2 つの日付の間の日数のリスト
PostgreSQL では、2 つの日付の間のすべての日のリストを生成するのは非常に簡単です。
Exasolで同じ結果を達成することは可能ですか?