PostgreSQLのパッケージに含まれているクライアントプログラムの1つ。 データベースにアクセスして、コマンド操作を行える。 また、-f オプションでファイルに記述したSQL コマンドを垂れ流すことができる。
例
psql database_name psql -d database_name psql -U user_name psql -f sql_command_file
関連記事 概要 参考情報 関連記事 GitHub - devlights/blog-summary: ブログ「いろいろ備忘録日記」のまとめ 概要 以下、自分用のメモです。いつも忘れるのでここにメモメモ。。。 psql で、結果の出力を縦表示するには \x と打ち込む。 再度、\x とすると元に戻ります。 これをいつも忘れるんですよねぇ・・・w 参考情報 過去の記事については、以下のページからご参照下さい。 ブログ過去記事置き場 サンプルコードは、以下の場所で公開しています。 Goのサンプルコード置き場 C#のサンプルコード置き場 Pythonのサンプルコード置き場
概要 PostgreSQLでプログラム上から単発のSQLを実行したい場合に、ファイルを経由せずに1回限りのパスワードを与える方法の話です。 最初に結論まとめ コマンドプロンプトの/cのセッション内で環境変数を設定し、そのままコマンドも実行します。例えば次のようになります。 cmd /c "set PGPASSWORD=user1password&&psql.exe --username=user1 --dbname=postgres --command="CREATE DATABASE database1'"" 話の背景 PostgreSQLでpsql.exeを使って、--commandオプシ…
はじめに 万一の障害や操作ミスなどに備えてデータベースのバックアップは必要不可欠です。 さまざまなバックアップ管理ツールがありますが、今回は WAL-G というツールでデータをバックアップとリストアする方法を紹介します。 WAL-Gとは WAL-G(公式ドキュメント)は PostgreSQL のバックアップ・リストアツールである WAL-E の後継として開発されたツールです。 WAL-E の機能を継承しているため、 WAL-E と同様にベースバックアップと WAL アーカイブを使用して、特定の時点または最新の状態にデータを復元することができます。 WAL-E と比べて復旧時の復元速度が 4 倍…
結論 環境変数に各種設定項目を設定して実行します。この環境変数は psql コマンドと共通です。 direnv で設定するとたとえば接続先ごとに柔軟な変更ができます。 例 $ export PGSSLMODE="verify-ca" $ export PGSSLROOTCERT="server-ca.pem" $ export PGSSLCERT="client-cert.pem" $ export PGSSLKEY="client-key.pem" $ pgcli -h localhost -p 5432 -U username -d postgres 参考 参考の参考 psql では環境変…
大規模なシステムでは、パフォーマンスやセキュリティ上の制約により、複数のデータベースをシャーディング(水平分割)するアーキテクチャを選択するケースは多いかと思います。 多くのPostgreSQLユーザーはpsqlコマンドを使って調査や保守を行いますが、シャーディングにより沢山のデータベースを管理するようになると、データベースの接続先を入力するのはとても面倒な作業となります。 エンジニアたるもの、「面倒だ」と思う心は大切にすべきです。 今回はシャーディングされたデータベースをpsqlで管理するための工夫をご紹介します。 寺岡 佑起(テラオカ ユウキ)AWS Summit 2022で発表してきまし…
psqlコマンドを実行する際にパスワード入力を省略するためのメモになります。
psqlコマンドを利用し、外部データベースにアクセスできるまでのメモになります。
結論 -P pager=off オプションを付与します。 例 例えば、以下のようにコマンドを実行すればページャが発動しません。 $ psql -P pager=off -U foo-p 5432 -d my_database -h localhost -c "SELECT relname, n_live_tup FROM pg_stat_user_tables WHERE schemaname='public';" 使いどころ psql の結果をログとして自動取得する際などに有効かと思います。 例えば、上記のコマンド例での SQL文 は、全テーブルのレコード数一覧を表示するものになりますが、こ…
GUIアプリケーションであれば横スクロールという方法があるので長くてもなんとかなります。ただ、psqlやpgcliを使っている以上は横スクロールなんていうことはできません。 発想の転換をします。すべて縦に表示してしまったら別に問題がないのではないでしょうか?探すと実行する前に-xオプション(expanded output)を実行すると縦にデータが表示できるのがわかりました。 実際に見てみましょう。 GUIアプリケーションをつかったらいいのでは? GUIアプリケーションを使うのもいいのですが、総じてそういったアプリというのは重いもので立ち上がるまでの待ち時間と色々ポチポチするだけ時間がもったいな…
WindowsのPCでRailsの開発ができるように 手順 インストール インストールを確認 PostgreSQLのスイッチを入れます 開発環境用のユーザーを作成(ここからは必要な方のみ) 開発環境ユーザー名とUbuntuユーザー名を同じに設定 railsのGemをインストール WindowsのPCでRailsの開発ができるように www.michidemy.com www.michidemy.com www.michidemy.com www.michidemy.com 手順 Railsを利用する場合は、データベースをインストールします。 のちにherokuというサービスでの公開を考えている…
chatGPTを利用してpodmanでwebサーバの構築。 ほぼ全部あいつらのコピペ。 オリジナルはプロンプトとその実行結果の実行結果。 プロンプト WEBサービスをpod manで構築する際DMZを意識して構築するサンプルを作れる? Windows環境でお願いします。 ※結果としてネットワークはちゃんとしていたけど別にWebサーバはDBを利用しているわけではなかった 結果 Podmanを使用してWindows環境でDMZを意識したWEBサービスを構築するためには、コンテナを使ってWebサーバーとバックエンドのサーバーを分離し、ファイアウォールのようなネットワーク制御を施す必要があります。ここ…
はじめに ltreeとは ltree型 ltreeの操作 活用法 1. 承認フローの構築 事前準備 テーブル作成 データ追加 2. テーブルに細かくアクセス制御をかける 事前準備 ltreeの有効化 テーブル作成 ポリシー作成 行セキュリティポリシーの有効化 ポリシーの設定 データを追加 ユーザー作成 試す まとめ
お疲れ様です、SREの西田 ( @k_bigwheel ) です。 最近、バッチ処理を実行するための新しい基盤を構築したので、この記事ではそれの紹介をしたいと思います。 少々前提の説明を丁寧にやりすぎてしまったので、作ったものをまず見たいという方は「構築したバッチ実行基盤のアーキテクチャ図と概要」の項目へジャンプしてください。 バッチ実行基盤とは バッチジョブ、バッチ処理のための仕組みは、多くのWebサービスで設けられていると思います。 とてもプリミティブなものであれば、Webアプリが動いているEC2インスタンス/コンテナにログインして rake task ... などを実行するパターンが典型…
はじめに oracle-instantclient のインストール perl CPAN と必要モジュールのインストール Ora2Pg インストール Ora2Pg の設定 Ora2Pg によるエクスポート はじめに 環境構築がひどく面倒な Ora2Pg を Amazon Linux 2023 で利用するための手順です。 Windows 環境の場合は以下を参照してください。 blog1.mammb.com Windows の場合、テーブルのエクスポートが並列実行できないので、Linux で行うことをお勧めします。 oracle-instantclient のインストール Oracle 21 だと、…
Redshift ユーザーによって COPY/UNLOAD でアクセスできる S3 のフォルダ(プレフィックス)を分ける方法をメモ。 実現すること Redshift ユーザー "rs_user_a" は S3 パス "s3://s3-for-redshift/rs_user_a/" 以下のみに COPY/UNLOAD でアクセスできる。 Redshift ユーザー "rs_user_b" は S3 パス "s3://s3-for-redshift/rs_user_b/" 以下のみに COPY/UNLOAD でアクセスできる。 検証結果 Redshift ユーザー "rs_user_a" は S…
はじめに おはようございます! torihaziです 今日は実務と並行して行っているNextjs x Rails のXクローンで使用予定の Prismaについてぶっつけ本番で入れて使用感や導入方法などを つらつらと書いていこうと思います! 今作っているのはこんな感じです Prismaとは Prisma | Simplify working and interacting with databases HCのCTOからの情報と公式ドキュメントの情報を読んで、なんとなく良さを言語化すると アプリで使う型定義の情報をフロントからコマンド1つでbackのdbから読み込んで一括生成してくれる(zod使う…
Dify 使ってますか?ワークフローを作れて、可能性が広がる素敵なツールです。 そんな Dify を local で立ち上げようとしたら、初手からつまづきました。Mac 環境で同様の事象が起きる可能性があるため、ログを残しておきます。 事象 公式の Github によれば、 github.com cd docker cp .env.example .env docker compose up -d と、何も労せず立ち上がるとのことです。 実際、過去に Ubuntu 環境で動かした際は問題ありませんでした。しかし、今回 Mac で同様に実行したところ、 api-1 | ERROR [root] …
psql コマンドだけちょこっと使いたい。 ただそれだけなのだが、クライアントのみのバイナリは配布されていない。 そんな時は、zip archive 版から不要ファイルを削除すれば良い。 PostgreSQL ダウンロードサイトから zip archive のリンクを辿れば postgresql-16.4-1-windows-x64-binaries.zip のような zip archive が入手できる。 postgresql-16.4-1-windows-x64-binaries.zip を解凍すると以下のようなフォルダ構成になっている。 このまま bin\psql.exe を実行すれば …
はじめに 事前準備 トリガーを使用する方法 補足:トリガーと関数のみ消す方法 まとめ
Embedding(エンベディング)とは、情報をコンパクトな数値ベクトル(多くの場合は高次元ベクトル)に変換する技術を指します。主に機械学習や自然言語処理の分野で使用され、文章や単語、画像、その他のデータを数値の形で表現することで、コンピュータがそれらを処理しやすくする。ベクトルとかは高校とか大学でもやって気がするけど苦手な分野なので正直難しそうという印象しかない。 atmarkit.itmedia.co.jp Embeddingのフロー データ収集と前処理 語彙の作成 単語の数値化 モデルに渡してEmbeddingベクトルを生成 Embeddingベクトルの利用 こんな流れになる。ベクトルデ…
STL STV SVL SVV SYS タイプ テーブル テーブル ビュー ビュー ビュー 生成方法 ディスク上のログ オンメモリーデータ STLへの参照 STVへの参照 - 用途 過去の実行記録の参照 現在進行中の処理の参照 STL/STVデータを組み合わせて別軸で分析 同左 - 記録タイミング 実行直後* - 実行中 - - 保持期間 7日間 - 7日間 - 7日間 * 検証結果より、ただし実行時間が短いと記録されないこともある 参考 https://pages.awscloud.com/rs/112-TZM-766/images/AWS-36_AWS-Summit-2023_Analyt…
はじめに 復習:PGlite pg-gateway pg-gatewayとPGliteを起動してSQLクライアントから接続する まとめ
2024/08/23分のコミットです。 CHANGELOGにのったコミットは以下の通りです。 activerecord/CHANGELOG.md Add support for dumping table inheritance and native partitioning table definitions for PostgeSQL adapter Support use of alternative database interfaces via the database_cli ActiveRecord configuration option. activesupport/CHAN…
チームの管理情報を溜めていたオンプレ基盤で動く NetBox を Amazon Elastic Container Service へ AWS Cloud Development Kit を用いて移植しました。 今まで NetBox をオンプレで動かしていた際には以下のような運用の難しさがありました。 DB も Docker コンテナによって管理されており、冗長化もなかったため DB コンテナが落ちてしまうとサービス提供できなくなる可能性があった Docker Compose で動かしているので、サービスの作り直しを実施するとそれまでのログが削除される そもそも NetBox を動かしている場…
はじめに 環境情報 初期設定 基本的なライブラリのインストール タイムゾーンの設定 シェル(zsh)の設定 デフォルトシェルの設定 【確認】デフォルトシェルの変更 プロンプト(starship)の設定 【確認】プロンプトの設定 Git, GitHubの設定 Gitの設定 GitHubへのSSH接続の設定 GitHubにSSHキーを登録する 【確認】GitHubへのSSH接続 アプリ開発で役に立つツールのインストール tigのインストール 【確認】tigのインストール docker, docker composeのインストール 【確認】docker, docker composeのインストール …