トップページDB@2ch掲示板
1002コメント295KB
PostgreSQL Part.11©2ch.net
レス数が1000を超えています。これ以上書き込みはできません。
0001NAME IS NULL 転載ダメ©2ch.net
垢版 |
2016/05/03(火) 15:42:33.27ID:???
PostgreSQL (ぽすとぐれすきゅーえる, ぽすとぐれす) について語るスレです。

●関連サイト
PostgreSQL 本家
http://www.postgresql.org/
日本PostgreSQLユーザ会
http://www.postgresql.jp/
ドキュメント
http://www.postgresql.jp/document/current/html/
ダウンロード
http://www.postgresql.jp/PostgreSQL
Let's Postgres (ポータルサイト)
http://lets.postgresql.jp/
pgFoundry
http://pgfoundry.org/

●前スレ
PostgreSQL Part.10
http://echo.2ch.net/test/read.cgi/db/1393353314/
0002NAME IS NULL
垢版 |
2016/05/03(火) 15:50:06.35ID:???
あらあら、次の舞踏会はこちらで開かれるのかしら?
0003NAME IS NULL
垢版 |
2016/05/03(火) 15:56:07.47ID:BecA4HPo
●過去スレ
PostgreSQL 2テーブル目 (WebProgから派生)
http://pc8.2ch.net/test/read.cgi/db/1056944337/
PostgreSQL & pgsql-jp ML 3テーブル目
http://pc11.2ch.net/test/read.cgi/db/1079771059/
【Windows】 PostgreSQL8 Part.1 【対応】 (実質part4)
http://pc11.2ch.net/test/read.cgi/db/1102247223/
PostgreSQL Part.5
http://pc11.2ch.net/test/read.cgi/db/1196512717/
PostgreSQL Part.6
http://pc11.2ch.net/test/read.cgi/db/1224318817/
PostgreSQL Part.7
http://hibari.2ch.net/test/read.cgi/db/1256300618/
PostgreSQL Part.8
http://toro.2ch.net/test/read.cgi/db/1294641578/
PostgreSQL Part.9
http://toro.2ch.net/test/read.cgi/db/1338040695/
PostgreSQL Part.10
http://echo.2ch.net/test/read.cgi/db/1393353314/

●関連過去スレ
■   PostgreSQLのことならここで聞け   ■ (初心者part1)
http://pc8.2ch.net/test/read.cgi/db/1056960249/
■   PostgreSQLのことならここで聞け   ■ (初心者part2)
http://pc8.2ch.net/test/read.cgi/db/1091523132/
PostgresSQLについて語ろう (雑談part1)
http://pc8.2ch.net/test/read.cgi/db/1056992724/
PostgreSQLについて語ろう where OID=2::oid (雑談part2)
http://pc8.2ch.net/test/read.cgi/db/1136805513/

●関連スレ
2ch検索
http://find.2ch.net/index.php?STR=PostgreSQL
WebProg/PostgreSQL 2テーブル目
http://pc11.2ch.net/test/read.cgi/php/1047317680/
0007NAME IS NULL
垢版 |
2016/05/12(木) 22:59:09.52ID:???
マイナーバージョンアップではなく
累積バグ修正と呼べといつも思う
0009NAME IS NULL
垢版 |
2016/05/17(火) 12:51:27.21ID:???
DBバージョン上げたら
insert into a select * from a_tmp where code = 1

列"b_flg"は型booleanですが、式は型textでした
ってエラー出るようになったんだけど、
CREATE CASTで対処するのが正しい道?
0011NAME IS NULL
垢版 |
2016/05/17(火) 13:23:11.87ID:???
>>9
そこで動かなくなるのってかなり古かったんじゃないか?

a_tmp にある b_flg に相当する列の型を boolean に変更すべきだろう。
CREATE (TEMP?) TABLE a_tmp (LIKE a) すればミスを避けられる。
0012NAME IS NULL
垢版 |
2016/05/17(火) 13:28:59.38ID:???
エスパーじゃないとわかんないのかw

説明すると
table a
code integer
b_flg boolean

table a_tmpも同じ構成のテーブル

で、booleanのフィールドがTRUEとか返すんだけど、それが
文字列だと思われてエラーになるみたい
# 8.4くらいから?
0013NAME IS NULL
垢版 |
2016/05/17(火) 14:40:07.89ID:???
>>11
もちろんa_tmpの b_flgの型はbooleanです。
0014NAME IS NULL
垢版 |
2016/05/17(火) 15:00:34.52ID:???
って自分でテーブル作って同じの試したらうまくいく・・・・

select b_flg from a_tmp

TRUEが帰ってくる時と
tが帰ってくる(こっちでエラーになる)のあるんだけど、何違うんだろ・・・
0015NAME IS NULL
垢版 |
2016/05/17(火) 15:07:39.56ID:???
「boolean型」なのか「text型にbooleanっぽい文字列が入ってる」のかをきちんと確認したほうが良い。
特にSELECT INTOでテーブルを作るような場合だと型指定が曖昧な場合がある。
0016NAME IS NULL
垢版 |
2016/05/17(火) 15:33:03.01ID:???
>>9
> DBバージョン上げたら
何から何に上げたのか

> insert into a select * from a_tmp where code = 1
どこでこれを実行しているのか

> table a_tmpも同じ構成のテーブル
本当か?

> で、booleanのフィールドがTRUEとか返すんだけど
何で実行するとそうなるのか

> 文字列だと思われて
思う主体は何か?
0017NAME IS NULL
垢版 |
2016/05/17(火) 15:35:23.64ID:???
> って自分でテーブル作って同じの試したらうまくいく
うまくいく環境と、うまくいかない環境の差異は何か
0018NAME IS NULL
垢版 |
2016/05/17(火) 15:42:34.62ID:???
>>9
> CREATE CASTで対処するのが正しい道?
なわきゃない
0019NAME IS NULL
垢版 |
2016/05/17(火) 20:41:11.06ID:???
なぜテーブル定義を確認しないんだろう...
0020NAME IS NULL
垢版 |
2016/05/18(水) 13:16:35.30ID:???
確認した結果同じ構成だったんだろ
知らんけど
0021NAME IS NULL
垢版 |
2016/05/21(土) 16:12:15.04ID:???
質問: shared_bufferを16GBに設定しているのに、実際にはそれ以下しか使用されてないっぽいんだが、どういうことでしょうか。

sahred_bufferの値が16GBであることを確認

$ grep shared_buffers /etc/postgresql/9.3/main/postgresql.conf
shared_buffers = 16GB # min 128kB

メモリ使用量を確認 (ファイルキャッシュを除くと9.781GBしか使われてない)

$ free -m
total used free shared buffers cached
Mem: 64384 64065 319 0 0 54284
-/+ buffers/cache: 9781 54603
Swap: 65487 120 65367

なおデータサイズは40GB程度。最大のテーブルが20GBくらいあって、それを全件検索してもメモリ使用量が増えない。
そのせいで性能が頭打ちになっている。だれかヒントおねがい。
0023NAME IS NULL
垢版 |
2016/05/21(土) 17:42:43.09ID:???
>>21
SeqScan時は一定量のメモリでやり繰りする機能が入っているから全メモリは使わない。
強制的に共有バッファに乗せたいなら pg_prewarm を試すといい。

そして、「そのせいで性能が頭打ち」は誤解だったと気付くだろう。
0024NAME IS NULL
垢版 |
2016/05/23(月) 09:04:57.49ID:???
>>22
ありがとうございます。こんな便利なモジュールがあるんですね。
とはいえインストールするのはDBAの許可が下りなさそうなので困りました。

>>23
ありがとうございます。pg_prewarmのmanualページを読むと、
「プレウォームはキャッシュが主に空のとき、一般的には起動時にもっとも有用です。」
とありました。起動時以外は効果は薄いんでしょうか。困りました。

> そして、「そのせいで性能が頭打ち」は誤解だったと気付くだろう。

そうなんでしょうか。今のところ、HDDから最初に読み込むときに時間がかかるのが問題であり、2回目以降は高速なのでSQLは問題ないかなと思ってます。
たとえば select * from users where id = :user_id のようなSQLがあったら、
2回目以降はメモリキャッシュに載っているので数msですが、ユーザごとの最初の
アクセスではHDDから読み込むので、2秒〜3秒かかってしまうのが問題です。
それで、shared_bufferを16GB設定しているのに実メモリは9GBしか使っていない
(ファイルキャッシュを除く)のを改善すれば解決できると思っているんですが、
甘いでしょうか。
0025NAME IS NULL
垢版 |
2016/05/23(月) 12:01:07.65ID:???
>>24
ああ、全件検索が遅いのが問題なんじゃなくて、
全件検索ではウォームアップができないのが問題だったのか。
それなら pg_prewarm が適するだろうね。
テーブルだけでなくインデックスも prewarm が必要か確認して欲しい。
「起動時以外は効果は薄い」とは「あくまで準備体操」の意味。
全ユーザが一通りアクセスした後のメモリ状態になるまでの時間を早めているだけだからね。
0026NAME IS NULL
垢版 |
2016/05/23(月) 13:51:14.62ID:???
>>24
> たとえば select * from users where id = :user_id のようなSQLがあったら、
> 2回目以降はメモリキャッシュに載っているので数msですが、ユーザごとの最初の
> アクセスではHDDから読み込むので、2秒〜3秒かかってしまうのが問題です。

そのたとえが本当に適切なたとえだとしたら、遅い原因はキャッシュにのってないから
じゃなくて、インデックスがないからだな。
0027NAME IS NULL
垢版 |
2016/05/24(火) 03:22:09.57ID:???
さすがにそれは考えにくいから例えが適切じゃなかったんだろうなぁ。
0028NAME IS NULL
垢版 |
2016/05/26(木) 23:53:37.00ID:6qsFySzK
すみません、教えてください。
Windows7/8/10などのクライアントOSにPostgreSQL本体をインストールして、他のPCからそのDBに
アプリケーションで読み書きした場合、Windowsのライセンス違反になるのでしょうか?

ttp://itpro.nikkeibp.co.jp/article/COLUMN/20060811/245694/?rt=nocnt
↑のような制限にかかってしまうのでしょうか?

もしライセンス違反なら、PowerGresのような製品でWindows7/8/10で動作すると書いてあるん
ですが、これはスタンドアロン限定ということですか?
0029NAME IS NULL
垢版 |
2016/05/27(金) 06:22:59.18ID:???
>>28
ここで聞くより、PowerGres販売元にメールで聞いた方が良いと思う。
0032NAME IS NULL
垢版 |
2016/05/27(金) 11:01:47.95ID:???
そんなめんどくさいライセンス違反なんてあるの?
0033NAME IS NULL
垢版 |
2016/05/27(金) 13:32:13.72ID:???
>>28
> アプリケーションで読み書きした場合、Windowsのライセンス違反になるのでしょうか?
なる。
というのが本当かどうかを知りたければ、まずこれを読め。
http://www.haruru29.net/blog/windows-share-files-20-devices/
納得できなければ、MSに聞くのが手っ取り早い。

> もしライセンス違反なら、PowerGresのような製品でWindows7/8/10で動作すると書いてあるん
> ですが、これはスタンドアロン限定ということですか?
じゃないの?
0034NAME IS NULL
垢版 |
2016/05/27(金) 14:04:58.50ID:Swk78D+S
通信したらいかんの?
windows上のブラウザからデータもらうWebサーバーはみんなライセンス違反?
0035NAME IS NULL
垢版 |
2016/05/27(金) 14:14:16.21ID:???
IISなら限定的に公開してもいいという話もあるな
ただし、同時接続数10までというのは、同時に10台のクライアントからと言う意味ではなく、
connectionの数という話もある
普通のブラウザでアクセスすると、同時に5本くらいアクセスに行くから、台数でいうと2台までとか
そんな制限になってるらしい

まあ、Microsoftに質問するのが確実だろうが
(ただ、Web情報によれば、サーバ用途は駄目と言われるらしいが)
0036NAME IS NULL
垢版 |
2016/05/27(金) 14:16:17.19ID:???
すごく古い情報だが、
http://www.atmarkit.co.jp/fwin2k/win2ktips/207rest_iis_pro/rest_iis_pro.html
> Webサーバの機能制限
> TCPでの同時接続数は最大10個まで
> TCPレベルでの同時接続数が最大で10個までに制限される。1人のユーザーが多数のTCP接続を開始している場合には、それだけで10個のTCP接続がいっぱいになってしまう可能性がある

これが正しい情報で、なおかつ今でも有効だとすると、事実上Webサーバとしては機能しないだろう
0037NAME IS NULL
垢版 |
2016/05/27(金) 14:18:08.03ID:???
ちなみに、MS謹製のサーバ機能以外のアプリは、問い合わせると軒並み駄目だと言われる気がする
(個人の想像です)
0038NAME IS NULL
垢版 |
2016/05/27(金) 14:27:21.13ID:???
MSっていろいろめんどくさいね。そら逃げますわぁ
0039NAME IS NULL
垢版 |
2016/05/27(金) 14:30:32.03ID:???
Linuxにしとくのがいいよ
0040NAME IS NULL
垢版 |
2016/05/27(金) 15:05:36.10ID:???
ですよねぇ。ソース持ってきてメイク、インストールでそのまんま使えるのが
気持ちいい。ぼろいPCでもまぁ動く。社員DBぐらいならそんなもんで十分。
0041NAME IS NULL
垢版 |
2016/05/27(金) 18:07:55.55ID:tcTYH4g1
電話でpowergressに聞くと、クライアントOSにポスグレをインストールして他の端末からアクセスしても問題ないはず、そんな問い合わせはないとのこと。メールじゃないから正式回答かは分からないが。

しかしマイクロソフトによると、それはNG。ポスグレがインストールされてる端末のアプリケーション(ポスグレ本体)を介して結果を返しているので、サーバにしか許されない操作をしていることになるらしい。

ベンダーによっては、本来NGの使い方を製品ページで提案してるが、知らないか、都合よく解釈してるか、どっちかなんだろうな。
0042NAME IS NULL
垢版 |
2016/05/27(金) 18:18:17.77ID:???
>>41
> 電話でpowergressに聞くと、クライアントOSにポスグレをインストールして他の端末からアクセスしても問題ないはず、そんな問い合わせはないとのこと。メールじゃないから正式回答かは分からないが。
なんと質問したかによるな。
ちゃんとWindowsのライセンス的に問題はないか聞いたか?
0043NAME IS NULL
垢版 |
2016/05/27(金) 22:30:53.99ID:Swk78D+S
MSがダメっつーんだからダメだろ
0044NAME IS NULL
垢版 |
2016/05/27(金) 22:37:49.54ID:???
サーバ用途なのにWindows Serverを使わないような貧乏人にはLinux (サポート無し) がお似合い
0045NAME IS NULL
垢版 |
2016/05/27(金) 22:47:11.17ID:???
そら そーだなぁ と言って離れてくわけです
0046NAME IS NULL
垢版 |
2016/05/27(金) 22:52:18.48ID:???
シュリンクラップ契約は有効かっつー話はあるけどな。
0047NAME IS NULL
垢版 |
2016/05/27(金) 23:15:31.07ID:???
Excel共有なんかどうなるんだろ
0048NAME IS NULL
垢版 |
2016/05/28(土) 00:08:57.80ID:???
真面目な人ほど、コンプライアンスに厳しい会社ほど
従います。当たり前ですけど。
0049NAME IS NULL
垢版 |
2016/05/28(土) 05:27:06.64ID:???
>>47
共有するブックを置くファイルサーバーが Windows Server ならなんの問題もない
つか、コンテンツの問題じゃないし
0050NAME IS NULL
垢版 |
2016/05/28(土) 14:55:10.76ID:???
unique制約のindexをdescで作れますか
0052NAME IS NULL
垢版 |
2016/06/16(木) 13:48:47.78ID:???
PostgreSQLはストレージがHDDじゃなくてSSDでも装置の特性に合ったバッチリ最適なデータの出し入れをしてくれますか?
0053NAME IS NULL
垢版 |
2016/06/16(木) 18:05:16.91ID:???
してくれません
プランコストの調整くらいはできるが
基本的にはOSに丸投げ
0054NAME IS NULL
垢版 |
2016/06/16(木) 18:13:16.71ID:???
そうでしたか。。
0055NAME IS NULL
垢版 |
2016/06/16(木) 18:37:11.62ID:???
他のRDMSではSSD用に処理が分かれているのだろうか
0057NAME IS NULL
垢版 |
2016/06/17(金) 01:21:21.43ID:???
ストレージが比較的高速なサーバー機だとデフォルトのrandom_page_costが
全然合わないから調整必須、ってのは昔からだな。
0058NAME IS NULL
垢版 |
2016/06/17(金) 02:49:21.84ID:???
当然 I/O statは見るわなぁ。
0059NAME IS NULL
垢版 |
2016/06/19(日) 00:37:31.45ID:???
一度仕事で使ってみたい
0060NAME IS NULL
垢版 |
2016/06/19(日) 10:44:21.98ID:sk8gYGH6
ボードゲームのオリジナルオーダー制作
http://www.logygames.com/logy/ordermade.html
簡単に本格自作ボードゲームが作れる時代到来!!
http://jellyjellycafe.com/3869
100円ショップでボードゲームを自作しよう
https://sites.google.com/site/jun1sboardgames/blog/makeyourbg
ノーアイデアでボードゲームを作ろう第1回「100円ショップで物を買う」
http://boardgamelove.com/archives/boardgame-make-1/
ボードゲーム市場がクラウドファンディングの出現で急成長を遂げ市場規模を拡大中
http://gigazine.net/news/20150820-board-game-crowdfunding/
0061NAME IS NULL
垢版 |
2016/08/13(土) 22:21:08.11ID:N8gS1gM5
■質問内容
検索結果の続きを取得するSQLを教えてください。

■詳細
データベースを検索し、100件ずつ取得しようとしています。

検索結果は100件ずつ取得するため、検索結果が100件以上ある場合は、
続きとして101件目から取得することになります。

通常はOFFSET句を使用して続きを取得しますが、更新の多いデータベースのため、
レコード数が増減する可能性があり、OFFSETで特定の数スキップすると問題が発生します。
例えば、続きの100件を取得する際、スキップする最初の100件の中に新たなレコードが1件増えると、
最初の100件取得した際の100件目のレコードと、続きの101件目のレコードは同じものになります。

WHERE句で解決を試みようとも思いましたが、ユニークな値でORDER BYをかけているわけではないため、不可能と判断しました。
ORDER BYで対象としているカラムの結果は同じ値のものも含まれており、
その同じ値の続く途中で件数によって区切られた場合、そのカラムをWHEREの対象にはできません。

助けてください。
0062NAME IS NULL
垢版 |
2016/08/13(土) 22:33:42.60ID:???
ソートキーは当然あるわけだから、「前回の最後のソートキーより大きな100件」を取得すればいいんでない?
0063NAME IS NULL
垢版 |
2016/08/14(日) 03:22:54.54ID:???
>>62
すいません、ソートキーというのはORDER BYで指定するカラムですよね。
そのカラムの値がユニークではないので、その値で判定できないんです。
このようなイメージです。

〜 ORDER BY score;

score
--------
2500
2800
3000
3000
3000
3400

例えばこれで3件ずつ取得するためにLIMIT 3を付けた場合、3000のスコアの途中まで取得されるので、
WHERE > 3000というような形で指定できないのです。
0064NAME IS NULL
垢版 |
2016/08/14(日) 06:01:16.47ID:???
テンポラリテーブル作って検索結果突っ込んでおくとか
主キーだけでも
0065NAME IS NULL
垢版 |
2016/08/14(日) 07:47:45.50ID:???
>>61
続きを取得している間はトランザクションは開きっぱなしなのか?
更新されても結果が変化しないのが条件なら
開きっぱなし or 全行を一時保管しておく必須がある

トランザクションを切るなら並行する更新結果も見えてしまうが
更新によって主キーとソートキーが変わらないならば
「欲しいソートキー + 主キー」を条件にすればいい
ORDER BY score, pkey WHERE score >= 前回のscore AND pkey > 前回のpkey
0066NAME IS NULL
垢版 |
2016/08/14(日) 09:02:39.41ID:???
実はユニークな主キーもないとか言い出したりして。
0068NAME IS NULL
垢版 |
2016/09/04(日) 22:19:47.07ID:???
次のバージョンって10になるのん?
0070NAME IS NULL
垢版 |
2016/09/11(日) 05:22:55.47ID:???
どうしてPostgreSQLはMySQLに勝てたのか
0071NAME IS NULL
垢版 |
2016/09/16(金) 04:50:18.57ID:???
>>63
score が 3000 であるレコード同士の順番をどうにかして決めておかないとだめだよ。

> 例えば、続きの100件を取得する際、スキップする最初の100件の中に新たなレコードが1件増えると、
> 最初の100件取得した際の100件目のレコードと、続きの101件目のレコードは同じものになります。
これを嫌うということは、最新のデータが表示されない可能性があるけれど、それはそれでいいってことかな
0072NAME IS NULL
垢版 |
2016/09/16(金) 13:33:25.57ID:???
>>61
> 最初の100件取得した際の100件目のレコードと、続きの101件目のレコードは同じものになります。
逆にそっちの方がいいかもよ。

仮に、scoreの降順でデータを取得するとする。
最初の検索時は350件あって、データの変更がなければ4ページ。
最初は1位5000点)〜100位(4000点)が表示される。

で、その表示中に、4001〜4999点に10人追加されたとする。
その結果、旧91〜100が101〜110位になる。

そのとき、「次」を見たときどうなってるのが良いか?
・旧101〜200位が表示される
・新101〜200位が表示される

今は、こうあるべきだと思っている。
> ・旧101〜200位が表示される
考えて欲しいのは、そこで「前」を見たらどうなっているべきか。
また、新たに追加された10人はいつどのようにすれば見られるのか。
0073NAME IS NULL
垢版 |
2016/09/16(金) 14:14:33.88ID:???
1か月も前のレスなのに急にどうした
0074NAME IS NULL
垢版 |
2016/09/16(金) 14:54:50.86ID:???
直近のコメントが今日だったから、最近の話題かと勘違いしたわ
0075NAME IS NULL
垢版 |
2016/09/17(土) 23:30:54.93ID:???
>>70
実際に勝ってるかどうかは知らないけど、もし勝つとしたら商用無料のせいだろ
0076NAME IS NULL
垢版 |
2016/09/18(日) 00:08:28.31ID:???
MySQLだって無料で商用に使えるが。
0077NAME IS NULL
垢版 |
2016/09/18(日) 00:15:45.94ID:???
実際のデータがわからんからなんとも
0078NAME IS NULL
垢版 |
2016/09/18(日) 00:36:42.83ID:eQBFaRs8
MySQLってまだあるの?
0079NAME IS NULL
垢版 |
2016/09/18(日) 20:47:05.35ID:???
>>78
冗談にしてはパンチが足りない
0080NAME IS NULL
垢版 |
2016/09/18(日) 23:51:08.89ID:???
MySQLってマラあるの?
0084NAME IS NULL
垢版 |
2016/09/19(月) 11:36:37.41ID:???
ドゥーユーリーメンバー
0085NAME IS NULL
垢版 |
2016/09/19(月) 19:01:18.26ID:???
トゥエニファスタァイ セプテンバー
0086NAME IS NULL
垢版 |
2016/09/19(月) 19:53:19.48ID:???
セプテンバーレイン
0087NAME IS NULL
垢版 |
2016/09/20(火) 09:13:48.38ID:???
9月のあめーはつめたくて〜
0089NAME IS NULL
垢版 |
2016/09/22(木) 00:47:57.06ID:???
MySQLと比べるなら、機能的に圧勝してるから比べ物にならないでしょ
PostgreSQLが勝ったというよりは、MySQLが選択肢に入ってなかっただけ
普段からPostgreSQLを使ってるとこは、わざわざMySQLを習得するコストがもったいないから
MySQLをさける傾向がある
0090NAME IS NULL
垢版 |
2016/09/22(木) 02:23:39.42ID:???
やってる人はやってるんだろうし、ご勝手にって感じかな。
もう気にかけることも無くなったね。
0091NAME IS NULL
垢版 |
2016/09/22(木) 08:05:39.47ID:???
10年前は熱いライバルだったのに
0092NAME IS NULL
垢版 |
2016/09/22(木) 08:34:13.73ID:???
比べるなら相手はMariaじゃないの?
もしくはローエンドOracleか
0093NAME IS NULL
垢版 |
2016/09/22(木) 14:05:12.63ID:???
レンタルサーバで使える所少なかったり
CMSとかで対応してないとかあるからなー
そういう場面ではMySQL選ばざるを得ない
0094NAME IS NULL
垢版 |
2016/09/22(木) 20:36:09.66ID:???
え?
PostgreSQLって流行ってるの?
もう廃れてきているのかと思った
どこの記事見ても、MySQLとかMariaDBとかばっかりだもんな
0097NAME IS NULL
垢版 |
2016/09/22(木) 21:42:08.83ID:???
postgresql はC
MySQL は C++
0098NAME IS NULL
垢版 |
2016/09/22(木) 21:56:20.47ID:???
いわゆるWeb系はMySQL系
基幹業務にOracleを使う金がないとこはPostgreSQL
ベンチャー企業が中小相手にシステム構築するときに使う

MySQL系の記事が多いのは最近やっと使えるようになってきたからだよ
AWSの影響もあるだろうしな

言語に例えるんだったらPostgreSQLはVBやPHPで
MySQLはJavascriptのイメージだな
0100NAME IS NULL
垢版 |
2016/09/22(木) 22:18:22.64ID:???
VBやPHPに例えられても嬉しくないなぁ
レンタルサーバで使えない問題は Heroku Postgres で多少はマシになったか
0101NAME IS NULL
垢版 |
2016/09/22(木) 22:26:33.29ID:???
アメリカなんかじゃ昔からMySQLの方が人気があって、Postgresが人気あるのは日本くらい。
0102NAME IS NULL
垢版 |
2016/09/22(木) 22:34:28.71ID:???
って前から言われてたね。今のそうなのですか。
0103NAME IS NULL
垢版 |
2016/09/22(木) 22:41:28.32ID:jDvr07Zs
アメリカ人はバカだからMyISAM速えええええええええつって喜んでただけやで
それもずいぶん昔の話やw
0105NAME IS NULL
垢版 |
2016/09/22(木) 22:51:40.38ID:???
一説にはWindowsで動かせたからとも言われてるな。
日本でフリーDBMSが導入され始めた頃はPostgres7.0が出る頃だったから
MySQLじゃなくてトランザクションをまともに使えるPostgresの方に流れたとも。
ヒゲががんばって布教したってのもあるんだろうけど。
0106NAME IS NULL
垢版 |
2016/09/22(木) 23:00:42.22ID:???
最新の研究成果をいち早く採り入れている方が好き
0107NAME IS NULL
垢版 |
2016/09/22(木) 23:37:58.79ID:???
まぁ 普通の開発者、ユーザーから見れば普通に使えれば
それほど最新技術はなくてもぉ とは思うんじゃないの?
0108NAME IS NULL
垢版 |
2016/09/22(木) 23:41:17.54ID:???
PostgreSQL使い始めた頃はMySQLはサブクエリ使えなかったからなあ
0109NAME IS NULL
垢版 |
2016/09/23(金) 00:54:00.00ID:???
MySQLはデータベースとして当然備えてる機能を備えてないんだよ
商用データベースから来た人にはおもちゃにすら見えない
0110NAME IS NULL
垢版 |
2016/09/23(金) 00:59:28.51ID:???
そうなんですか ほんとに知らない
0111NAME IS NULL
垢版 |
2016/09/23(金) 01:18:36.39ID:???
UberがPostgreSQLからMySQLへ移行した経緯の記事と
それへの反論は興味深かった
0112NAME IS NULL
垢版 |
2016/09/23(金) 17:15:06.11ID:???
俺のとこではmaxでも10リクエスト/sec程度なんで、あんま参考にはならなかったな
0113NAME IS NULL
垢版 |
2016/09/25(日) 16:30:18.30ID:???
いままでPostgreSQLで、ごく最近Oracle使い始めたけど、
Oracleって糞だなって思うこと多い。
Oracleをよく知らないせいだとは思うけど。


業務系、Webシステムなどでは、PostgreSQLで何も問題なし!
0114NAME IS NULL
垢版 |
2016/09/25(日) 20:40:24.75ID:???
普通に使う分はもちろん、バックアップもフェールセーフも問題ないよね。
マテリアライズドビューなんて使った事もないし。
0115NAME IS NULL
垢版 |
2016/09/25(日) 21:07:28.83ID:???
だからボラクルはサポートで金とってんだっつってんだろ
0116NAME IS NULL
垢版 |
2016/09/25(日) 22:27:52.99ID:???
>>113
最近は差を詰めてきてるよね
とはいえ大規模になればまだまだOracle

>>114
PostgreSQLにも一応マテリアライズドビューあるでしょ

>>115
金払わないとパッチすらくれず、払っててもバグ修正してくれないけどな
0117NAME IS NULL
垢版 |
2016/09/25(日) 22:57:09.20ID:???
>>116
>金払わないとパッチすらくれず、払っててもバグ修正してくれないけどな
何その塩対応
0118NAME IS NULL
垢版 |
2016/09/25(日) 23:09:26.67ID:???
>>116
ポスグレのそれを使った事ないって意味ですよ。
Orackeの現場では頻繁に聞こえますね。でも結構トラブッてるようなw
0119NAME IS NULL
垢版 |
2016/09/26(月) 09:58:44.35ID:???
バグが修正されてユーザのコードが動かなくなったとき
危険なコードを書くのが悪いと言われるのがPostgres
専用の互換性パッチの見積もりをくれるのがOracle
0121NAME IS NULL
垢版 |
2016/09/27(火) 00:46:01.86ID:???
>>119
なるほど
ボラクル体質をとても明快に理解できた
そんでもってどっちがまともかは言わずもがなだな
0122NAME IS NULL
垢版 |
2016/09/27(火) 00:59:38.02ID:???
バージョンあがって動かなくなるなら、バージョンあげないだけだよ
そもそも特に困ってないのにバージョンあげるわけないだろう
ミドルウェアのバージョンが変わるなんて、5年ごとのリプレースだけだよ
0123NAME IS NULL
垢版 |
2016/09/27(火) 01:21:18.54ID:???
そのバグ修正の内容がセキュリティ脆弱性の改善でなければな
0124NAME IS NULL
垢版 |
2016/09/27(火) 01:50:31.29ID:???
データベースサーバにセキュリティパッチあてるわけないだろ
0126NAME IS NULL
垢版 |
2016/09/27(火) 02:25:22.67ID:???
きっと軽い間違いでしょう
0127NAME IS NULL
垢版 |
2016/09/27(火) 10:22:52.91ID:???
(データベースサーバはインターネッツに公開なんかしないんだから、セキュリティパッチあてる必要もないだろ)
ということかな
0128NAME IS NULL
垢版 |
2016/09/27(火) 14:56:40.91ID:???
そんなパッチがあるなら、やるだけの事かと。
0130NAME IS NULL
垢版 |
2016/09/27(火) 17:26:54.96ID:???
OSのパッチなのかRDBMSのパッチなのかでもかわってくるw
0131NAME IS NULL
垢版 |
2016/09/27(火) 18:24:19.86ID:???
この流れでOSパッチとかアホ過ぎやろ
0132NAME IS NULL
垢版 |
2016/09/27(火) 20:22:40.29ID:???
だからパッチなんてあるんかい
0134NAME IS NULL
垢版 |
2016/09/28(水) 00:10:30.52ID:???
おまえらPostgreSQLにセキュリティのためにパッチなんて当てたことあるの?
UPSERT使いたいからバージョンあげるとかだったらあるかもだけど
セキュリティなんて考えたこともない
0135NAME IS NULL
垢版 |
2016/09/28(水) 00:31:52.94ID:???
いつまで不毛な争いをしているのだ
0136NAME IS NULL
垢版 |
2016/09/29(木) 00:05:22.86ID:???
毛とNULLは無いほうがいいって聞いたことがある
0137NAME IS NULL
垢版 |
2016/09/29(木) 00:45:43.04ID:???
だれがハゲだと たここら
0138NAME IS NULL
垢版 |
2016/09/29(木) 00:52:51.97ID:???
coalesce(頭髪, 植毛)
0140NAME IS NULL
垢版 |
2016/09/30(金) 10:50:27.58ID:???
ついに9.6かぁ。
もうついていけないw
0141NAME IS NULL
垢版 |
2016/09/30(金) 11:22:57.45ID:???
>>139
・パラレルクエリ
・同期レプリケーション / シャーディング (postgres_fdw)
・全文テキスト検索 (たぶん日本語はダメ)
って感じ?
結構なパワフルユーザ向けだな。まぁ基本はやり尽くしているんだろうけど
0142NAME IS NULL
垢版 |
2016/09/30(金) 13:19:14.81ID:???
カンファレンスはまた盛況になりそうですね
0143NAME IS NULL
垢版 |
2016/09/30(金) 22:43:32.29ID:???
どうしてPostgreSQLって本屋さんに本が全然ないんですか?
MySQLはたくさんあるのに
0144NAME IS NULL
垢版 |
2016/09/30(金) 22:50:14.83ID:???
本が出る頃に改版するためじゃない?
0145NAME IS NULL
垢版 |
2016/10/01(土) 00:29:42.91ID:???
最新のシーラカンス本の対応バージョンは8くらいだったっけ?
0146NAME IS NULL
垢版 |
2016/10/01(土) 00:34:28.90ID:???
CTEやCONFLICTについてがっつり書いてるような本が欲しい
0147NAME IS NULL
垢版 |
2016/10/01(土) 00:52:05.59ID:???
となるとやっぱ最新マニュアルしかないわなぁw
そこそこ良く書けてるしわかり易いと思う。
0148NAME IS NULL
垢版 |
2016/10/06(木) 01:01:59.37ID:???
おすすめの記事ってどこかある?
ブロガーさんやニュースサイトでも何でも
PostgreSQLについて情報が集まるようなとこ探してる
0150NAME IS NULL
垢版 |
2016/10/06(木) 05:53:59.59ID:???
Let'sは最近、更新サボってるからなあ・・・
0152NAME IS NULL
垢版 |
2016/10/06(木) 08:21:09.55ID:???
さあ、みんな今こそ売り込みの絶好のタイミング
自社のURLを貼るんだ
0154NAME IS NULL
垢版 |
2016/10/14(金) 01:20:43.16ID:???
pgAdmin4の日本語化ってどうやるの?
0155NAME IS NULL
垢版 |
2016/10/17(月) 22:11:27.19ID:Xu2/z0cZ
エセ左翼の目的は、わざと突っ込みどころが多い主張をすることで自分たちへ注意を向けさせ、
カルトへ向かう非難の矛先を逸らすこと。
国益に反することを言ったり、主張が食い違うもの同士の対立を煽ろうとするので放置し難いが、
主義思想についての洗脳を受けているわけではなく、フリをしているだけなので、
言い負かされてもダメージを負った様子もなく、論点をすり替えられるかスルーされる。
まともに相手をしてはならない。
0156NAME IS NULL
垢版 |
2016/10/18(火) 05:08:12.81ID:???
pgAdmin3 は日本語で使ってるとなんかのコマンドが日本語で流れてエラーになった記憶があるので、それ以来ずっと英語で使ってる
0159NAME IS NULL
垢版 |
2016/11/23(水) 13:04:20.36ID:???
なんだかんだ満員でしょう
0160NAME IS NULL
垢版 |
2016/11/23(水) 16:40:12.30ID:???
まだ昨日時点ではチケットは残っているっぽかった。
0162NAME IS NULL
垢版 |
2016/12/10(土) 00:05:22.08ID:???
PostgreSQLって、OrderByを書かないと・・・・
毎回違う並び順になるの?
それとも、PrimaryKey順になるの?
0164NAME IS NULL
垢版 |
2016/12/10(土) 01:56:45.87ID:???
不定だわな。たとえ何かの順に並んでたとしても信用出来ない。
0165NAME IS NULL
垢版 |
2016/12/10(土) 04:55:25.07ID:???
>>162
一々ソーティングしなくていいから少しでも速く、省メモリで結果返して欲しいって時に勝手にソーティングされたら寧ろ迷惑だと思わないかい?
ソーティングは通常ではなくオプションとすべきだ
0166NAME IS NULL
垢版 |
2016/12/10(土) 07:56:41.23ID:???
なんという的外れな観点
0168NAME IS NULL
垢版 |
2016/12/10(土) 16:50:14.90ID:???
lsで何が返るかみたいなもんやないやろか
0170NAME IS NULL
垢版 |
2016/12/12(月) 13:42:28.85ID:???
不定だけど、大体はINSERTした順になることが多い
UPDATEしたりするとそれが最後になったりするので
id順とはいえない
もちろん出てくる順番を当てにしちゃいけないw
0171NAME IS NULL
垢版 |
2016/12/12(月) 22:30:45.27ID:???
で、なんでそんな物理的事情で並んだ順で返すのかって言ったら、『一々ソーティングしなくていいから少しでも速く、省メモリで結果返して欲しいって時に勝手にソーティングされたら寧ろ迷惑だろ、ソーティングは通常ではなくオプションとすべきだ』ってことでないの?
0173NAME IS NULL
垢版 |
2016/12/13(火) 08:19:35.95ID:???
>>170
クラスタ化インデックスだとpk順になる。
0174NAME IS NULL
垢版 |
2017/01/29(日) 10:18:17.47ID:60pB1fs/
>>170
そんなのどんなRDBMSでも同じで、実装を考えれば、そうなるだろうが。
0175NAME IS NULL
垢版 |
2017/01/29(日) 10:20:19.64ID:60pB1fs/
>>171
違う。RDBのレコードはソート指定をしないかぎり不定というのが標準SQLでの仕様だから。
0176NAME IS NULL
垢版 |
2017/01/29(日) 10:37:46.86ID:???
PHP+PostgreSQLで運用する場合、元号の処理ってどうしてる?
自分でしか使わないシステムなので、極力西暦で通すか、どうしても必要な場合は1988引いてるけど(基本的に昭和のデータは扱わない)、今度の改元がなぁ
0177NAME IS NULL
垢版 |
2017/01/29(日) 11:01:42.79ID:60pB1fs/
>>176
データベースだというのに西暦→和暦マスタテーブルを作ろうという発想がないことに驚く
0178NAME IS NULL
垢版 |
2017/01/29(日) 11:05:32.41ID:???
>>176
昭和99年とかの特殊な要件がなければ内部は西暦、外部とのやり取り時に変換が普通かと
0179NAME IS NULL
垢版 |
2017/01/29(日) 12:10:35.54ID:???
>>176
表示なり入力なりエンドユーザに一番近いところで変換したいな
そもそも元号という「汚い」ものを可能な限り扱いたくないし、
Postgres用の変換はおそらく自作が必要だが、PHPやJS用なら適当に拾ってこれるから
0180NAME IS NULL
垢版 |
2017/01/29(日) 12:20:13.52ID:???
>>177
マスタテーブルだけで変換しようとすると、年の途中での改元に対応しないといけないんで、1日あたり1レコード要るんじゃね?
100年で36,525か36,524になっちゃう
0182NAME IS NULL
垢版 |
2017/01/29(日) 13:32:09.18ID:60pB1fs/
>>180
アホくさ。なんで年号が変わらない部分の日の単位でデータを持つんだよ。

それじゃあ自分の生年月日を書くのに今日からさかのぼって一日ごとに列挙して書くようなもんだろw
0183NAME IS NULL
垢版 |
2017/01/29(日) 15:26:01.88ID:???
明治:1868-01-25 〜 1912-07-29
大正:1912-07-30 〜 1926-12-24
昭和:1926-12-25 〜 1989-01-07
平成:1989-01-08 〜
これをどうUIに反映するかは、各自の考え方だろう。
0186NAME IS NULL
垢版 |
2017/02/01(水) 14:47:49.81ID:4qKxf55o
インデックスについて教えてください。
調べましたが「検索が早くなる場合もあるらしい」くらいしか分かりませんでした。

・ インデックスは作成するだけでよいのか?
   検索時に作成したインデックスを指定したりしなくてよいのか。
   調べた限り指定する方法がなかったため、作成するだけで効果があるように見えた。

・ REINDEXでのロック時の挙動
   インデックスがロックされると聞いた。
   インデックスがロックされるだけで検索自体は可能なのか。

・ とりあえずインデックスを作成しておけばよいのか?
   インデックスがそんなに便利なものなら、ハードディスクの容量が許す限り、
   検索しそうなものは片っ端からインデックスを作成しておけばよいのか。
0187NAME IS NULL
垢版 |
2017/02/01(水) 15:20:55.01ID:???
>>186
> ・ インデックスは作成するだけでよいのか?
はい。

インデックスを使った方が検索コストが低い場合は、自動的に使われます。

> ・ REINDEXでのロック時の挙動
>    インデックスがロックされるだけで検索自体は可能なのか。
いいえ。検索もブロックされます。

通常はreindexする必要はありません。
将来、reindexが必要だと感じたら(容量が増大したなどの場合)、どう対処するのが
良いか検索するとよいです。

> ・ とりあえずインデックスを作成しておけばよいのか?
いいえ。

インデックスがあるということは、INSERT/DELETEのときにデータ本体だけでなく
インデックスそのものも更新する必要があります。
単純に言えば、処理時間が増えるということです。
不要なインデックスは生成しないようにするのが良いです。
0188186
垢版 |
2017/02/01(水) 15:43:28.39ID:???
>187
ありがとうございます。
助かります。
0189NAME IS NULL
垢版 |
2017/02/01(水) 18:30:22.45ID:ndjPxyEX
ポスグレにかぎらない初心者の質問が多いな。
0190NAME IS NULL
垢版 |
2017/02/02(木) 17:57:30.34ID:???
日本語扱うならencodeはCだろって言う人を結構見る気がしますが、なぜutf8じゃ駄目なんでしょうか?
0192NAME IS NULL
垢版 |
2017/02/02(木) 18:41:25.46ID:???
えっ・・・
今まで作ったシステム、全部utf8にしてきてしもうた・・・
0193NAME IS NULL
垢版 |
2017/02/02(木) 19:10:07.87ID:???
encodeとlocaleは別だぞ。
encode=utf8 かつ locale=C が推奨なのはよく見る。

Linux (glibc) はlocaleの実装をサボっているので、C以外に設定しても性能が落ちるだけで何の利点もない。
Windowsなら文字列の比較やソートに差が出るので、用途に適して選べばいい。
0194NAME IS NULL
垢版 |
2017/02/02(木) 22:45:30.91ID:???
initdb --encoding=UTF8 --no-locale ←これが基本かなと
0196NAME IS NULL
垢版 |
2017/02/03(金) 14:49:30.55ID:???
>>193
Linuxでも当然ながら差が出る。
なぜなら、文字コードは辞書順には並んでないから。
0197NAME IS NULL
垢版 |
2017/02/03(金) 15:00:11.71ID:JY8XYZfi
>>196
どんな文字コードでも漢字の並び順は、日本人が見ても意味のある順番になってないからな。
0198NAME IS NULL
垢版 |
2017/02/03(金) 15:45:41.80ID:???
>>196
Linuxもまともになったのか?
昔使ったときはlocale=ja系でも変わらず文字コード順に並べられたんだが
0199NAME IS NULL
垢版 |
2017/02/03(金) 16:06:32.65ID:???
>>198
「辞書順」の正しい定義を知らないけど、少なくとも文字コード順には並ばないよ。

create table foo(s text)に、漢数字の'一'から'九'をインサートし、以下のクエリを実行。
select array_agg(s) from (select s from foo order by s) as t;

locale=C -> {一,七,三,九,二,五,八,六,四} -- 文字コード順
locale=ja_JP.UTF-8 -> {一,九,五,三,四,七,二,八,六} -- 辞書(?)順
0200NAME IS NULL
垢版 |
2017/02/03(金) 16:35:10.23ID:???
文字コード順でも辞書順でも、それを正解とするかどうかは要件次第。
ちなみに漢数字は、訓読み順で並んでいる。
0201NAME IS NULL
垢版 |
2017/02/03(金) 16:45:47.54ID:???
>>199
理解した。Linuxでも順序は変わるね。
ひらがな/カタカナの濁/半濁の扱いは今でも差があるようだ。設計思想?互換性?
 msvcrt: ハはバばパぱ
 glibc : はばぱハバパ

環境依存が怖い。要件次第だが、自前で「ふりがな」列を用意したほうがマシだな。
0203NAME IS NULL
垢版 |
2017/03/21(火) 17:08:09.19ID:???
他人に公開する予定の無い、自分専用のwebサイトを作る場合でもSQLインジェクション対策はしておいた方がいいよね?
クラスを転用するときに問題になるし、悪意が無くてもエラーのもとだし
0204NAME IS NULL
垢版 |
2017/03/21(火) 17:45:20.99ID:???
おお 久々
3.19行った人いないの?
0205NAME IS NULL
垢版 |
2017/03/21(火) 19:35:41.10ID:???
>>203
言語によるけど今時パラメータクエリぐらいは使えるだろうから普通にパラメータクエリでやるわな
あとから見てもその方がわかりやすいし
0206NAME IS NULL
垢版 |
2017/03/21(火) 20:16:56.50ID:???
>>205
PHPで言えば、pg_query_params()とか?
0207NAME IS NULL
垢版 |
2017/03/21(火) 21:01:55.15ID:NIvfjcd/
phpって対策されていないやつ
非推奨じゃなかったっけ

おいらはPDOでやってるかな
0209NAME IS NULL
垢版 |
2017/03/22(水) 00:21:47.00ID:???
ぽすとぐれすきゅーえる
ぽすとぐれすえすきゅーえる
0210NAME IS NULL
垢版 |
2017/05/10(水) 00:41:30.16ID:Yh/Qr3SR
TIMESTAMP (WITHOUT TIMEZONE)とCURRENT_TIMESTAMPについて教えてください。
INSERTにてCURRENT_TIMESTAMPで入れたあと、SELECTで取り出すと日本時間になっています。
どの時点で日本時間になっているのでしょうか?

1. CURRENT_TIMESTAMPの時点ではJSTだが、INSERTするときにJSTがUTCに変換されて保存され、
  SELECTで取り出すときにシステムの時刻を見て+0900されている
2. CURRENT_TIMESTAMPの時点ではJSTで取得されるが、
  元々これにタイムゾーンのデータはなく、そのまま保存され、
  SELECTで取り出すときは同じシステム時刻を使ってるからたまたま同じタイムゾーンとして取得されている
3. CURRENT_TIMESTAMPの時点ではUTCで取得され、保存もUTCだが
  SELECTで取り出すときはシステム時刻を参照して勝手にJSTにしている
4. その他の未知の仕組み
0211NAME IS NULL
垢版 |
2017/05/10(水) 07:47:06.12ID:???
>>210
http://www.postgresql.jp/document/current/html/datatype-datetime.html
> 通常timestamp without time zoneの値はtimezoneのローカル時間としてみなされる
とあるから、言葉通りだとするなら:
・INSERTするときに時刻の値だけを保存する (+0900を無視)
・SELECTするときに現在のタイムゾーン扱い (+0900を追加)
SET TIMEZONE TOしながら試してみれば検証できるかも
0212NAME IS NULL
垢版 |
2017/05/12(金) 18:06:02.05ID:???
>>210
まず前提として、without time zoneをselectした結果にはtime zone情報はないのだから、UTCもJSTもない。
次にcurrent_timestampは、tz情報付きのデータ。
それをwithout time zone絡むにインサートすると、tz情報は切り捨てられる。(たとえば、"2017-05-12 18:00:00")

そのデータを、日本で取得しようがアメリカで取得しようが、tz情報なしの"2017-05-12 18:00:00"が取得される。
つまり、アメリカで取得した人は、現地時間の"2017-05-12 18:00:00"だと見えるということ。
0213210
垢版 |
2017/05/12(金) 23:59:44.61ID:???
>>211-212
ありがとうございます。
世界向けのSNSを作ろうとしたのですが、これがネックで
時間部分の設計ができない状態でした。
助かります。
0214NAME IS NULL
垢版 |
2017/05/14(日) 15:53:45.17ID:???
お世話になります。

psql で database ごとに history を分けて表示したい (\s) のですが、
(他の databae の history を表示したくない)
どうやったらいいのでしょうか?

よろしくお願いします。
0215NAME IS NULL
垢版 |
2017/05/14(日) 16:12:10.64ID:???
historyって、homeの .psql_history 出してるだけだからなあ
db切り替えるたびにリネームするとか?
0216NAME IS NULL
垢版 |
2017/05/14(日) 20:12:51.97ID:???
ああ、そういう仕組みなんですね。
複数の database をそれぞれ別々に psql で開いたりしてるんですけど、じゃぁ、全然無理ですね。
わかりました、ありがとうございました。
0218NAME IS NULL
垢版 |
2017/05/15(月) 22:58:52.98ID:???
>>217
そのものズバリですね♪
ありがとうございます。
おかげで、.psqlrc っていう設定ファイルのことも知りました。
PostgreSQL の Documentation にありますね。
かさねがさねありがとうございました。
0219NAME IS NULL
垢版 |
2017/06/09(金) 23:25:23.53ID:???
拡張を使った場合、メジャーバージョンが変わるときのアップグレードで使えなくなったり作業が増えたりするのでしょうか?
スキーマのバージョンが変わっている拡張があったら何かしないといけないとか?
0220NAME IS NULL
垢版 |
2017/06/10(土) 15:00:08.80ID:jh8YfBo0
そこまでわかったいたら随時チェックしたほうがいい
0221NAME IS NULL
垢版 |
2017/06/14(水) 00:49:31.73ID:???
30分単位とかで時間を丸めてくれる関数ないですか
0222NAME IS NULL
垢版 |
2017/06/14(水) 02:30:34.88ID:???
ないんじゃないかな
0223NAME IS NULL
垢版 |
2017/06/14(水) 11:05:12.90ID:???
>>221
> 30分単位とかで時間を丸めてくれる関数ないですか
自作すれば?
0224NAME IS NULL
垢版 |
2017/06/14(水) 11:25:06.19ID:???
トリガのデバッグってどうやってますか?
初めてトリガ関数作ります
0225NAME IS NULL
垢版 |
2017/06/14(水) 11:27:34.06ID:???
>>224
普通に、クエリ後、関連データを取得してassert
0226NAME IS NULL
垢版 |
2017/06/14(水) 11:36:05.69ID:???
>>225
ASSERT文、調べました。
そういうのがあるんですね♪
ありがとうございました
0227NAME IS NULL
垢版 |
2017/06/14(水) 13:45:01.50ID:???
>>226
たぶん勘違いしてる
クライアントコードを実装する、JavaとかPHPとかのプログラミング言語で普通にチェックしろってこと
IDEでステップ実行とかできないからね
0228NAME IS NULL
垢版 |
2017/06/14(水) 16:42:17.71ID:???
>>227
> クライアントコードを実装する、JavaとかPHPとかのプログラミング言語で普通にチェックしろってこと
そうなの?
それなら俺も勘違いしてたわ。
0230NAME IS NULL
垢版 |
2017/06/14(水) 17:40:45.85ID:???
そう思う。自立型トランザクションを使えばログ表に対するcommitを必ずしながら
トリガー本来の処理ではrollback等もできる。多分10g以降の機能で9iでは不可。
0231NAME IS NULL
垢版 |
2017/06/14(水) 17:51:09.39ID:???
>>229
普通にデータベースにアクセスするメソッドをテストする方法と同じだよ。
確認する項目が、トリガーが変更したデータも対象になるってだけで。

普通にデータベースにアクセスするメソッドをテストするときもprintfデバッグしてたら、
トリガーのテストもそうなるだろうけど、普通はコードで確認するんじゃないか?
0232230
垢版 |
2017/06/14(水) 17:57:11.64ID:???
ゴメン。Oracleと勘違いしてた。>>230 は無視して
0233NAME IS NULL
垢版 |
2017/06/14(水) 18:26:54.70ID:???
>>231
トリガだと「普通のアクセス」とはデバッグ方法が違いそう、ってのが質問の意図じゃないの?
それを「同じだよ」で済ませるのは会話が噛み合っていない感がある

トリガの内部で何が起きているかのデバッグにはprintf程度しか道具が無いんじゃないかな?
トリガの結果が適切かを確認するにはテストコードを使うのはわかる
0234NAME IS NULL
垢版 |
2017/06/14(水) 19:40:35.30ID:???
日本語メッセージでGSSAPIがGSSAIになっちゃってるところがある
0235NAME IS NULL
垢版 |
2017/06/15(木) 10:34:25.70ID:???
>>233
> トリガの内部で何が起きているかのデバッグにはprintf程度しか道具が無いんじゃないかな?
内部が正しいと確信が持てるだけのテストをすればいいだけ。
てか、トリガーのコードじゃなくて、ホストプログラムのコードだってそうだろ?
まぁ、途中で変数の中身を見ないと、なにが行われているのかわかれないスキルレベルだったら話は違うが。
0236NAME IS NULL
垢版 |
2017/06/15(木) 12:57:16.02ID:???
>>235
ホワイトボックステストも知らないなら絡んでくるなよ
0237NAME IS NULL
垢版 |
2017/06/15(木) 13:34:54.71ID:???
>>236
いや、ホワイトボックステストの話をしてるつもりだが。

TDDはホワイトボックステストだが、やることは、
・前提条件を作る
・テスト対象のメソッドを呼ぶ
・結果を確認する
を、自分の確証が持てるまでやる。

トリガーをテストする場合も同じ。
トリガーをキックするメソッドを呼び出すか、あるいは直接INSERT/UPDATE/DELETEを実行し、
トリガーが変更した内容を、実際にデータを取得してassertする。

C0カバレッジで満足できるならそこでやめる。
確証が持てないなら、C1カバレッジになるようなテストを追加する。
0238NAME IS NULL
垢版 |
2017/06/15(木) 14:01:14.73ID:???
GUIでブレークポイント張ったりステップ実行させたりもできるようだね。
俺は使ったことないけど。

PL/pgSQLデバッガを使ってみよう
http://pgsqldeepdive.blogspot.jp/2013/05/plpgsqldebugger.html

PostgreSQLのPL/pgSQLのデバッガpldebuggerを使ってみる
http://qiita.com/sadapon2008/items/627d0649122628c115f6

git repository
https://git.postgresql.org/gitweb/?p=pldebugger.git;a=summary
0239NAME IS NULL
垢版 |
2017/06/15(木) 14:12:51.09ID:???
>>237
テストのやり方はそれでいいけど、テストが失敗してなおかつ原因がよくわからないときの話じゃないかな
そういうときは、raise noticeがやっぱり最強だと思う
0240NAME IS NULL
垢版 |
2017/06/15(木) 18:22:46.73ID:???
トリガーはいいとして、複雑なクエリのデバッグはどうやるつもりなんだろうか
それこそ、printfも使えない
0241NAME IS NULL
垢版 |
2017/06/15(木) 18:48:03.58ID:???
>>237
背伸びしすぎ

> TDDはホワイトボックステストだが
TDD の話なんて誰もしてない
最近知って話したくてしょうがないのか? w
そもそも TDD はコードを作る前にテストケースを作るからホワイトボックステストにはならない
むしろ仕様からテストケースを作るのでテストケースの作り方としてはブラックボックステストに近い

> ・前提条件を作る
> ・テスト対象のメソッドを呼ぶ
> ・結果を確認する
その前提条件の作り方の話だぞ
> を、自分の確証が持てるまでやる。
違う、ホワイトボックステストでは内部のコードを考慮してテスト条件を作るんだよ
それがわかってないから
> トリガーをキックするメソッドを呼び出すか、あるいは直接INSERT/UPDATE/DELETEを実行し、
> トリガーが変更した内容を、実際にデータを取得してassertする。
なんてアホなことを言い出す
0242NAME IS NULL
垢版 |
2017/06/15(木) 21:33:54.87ID:???
IPAのデータベーススペシャリスト持ってない奴は書き込むなよ
0243NAME IS NULL
垢版 |
2017/06/15(木) 22:23:02.72ID:???
このスレ的にはPostgreSQL CEだろう。
0244NAME IS NULL
垢版 |
2017/06/16(金) 03:19:45.40ID:CymGFRXo
デバッグしたいと言ってるやつの目的がわからない。

テストと混同しているみたいでやばそうだな。
0245NAME IS NULL
垢版 |
2017/06/16(金) 10:33:58.83ID:???
>>241
TDDのわかってない奴と議論しても時間の無駄なんで、これでも読んで。
https://ja.wikipedia.org/wiki/%E3%83%86%E3%82%B9%E3%83%88%E9%A7%86%E5%8B%95%E9%96%8B%E7%99%BA

> 違う、ホワイトボックステストでは内部のコードを考慮してテスト条件を作るんだよ
C0, C1カバレッジの意味わかってるか?
それを網羅しなければ自信がもてない場合は、それをカバーするテストを納得できるまで追加するんだよ。
0246NAME IS NULL
垢版 |
2017/06/16(金) 10:41:33.48ID:???
>>241
つか、お前、データベースアクセスを含むクラス・メソッドの単体レベルのテストはやってるのか?
やってるとしたら、どうやってんだ?

テストコード書いてるなら、トリガーがあろうとなかろうと関係ないことは自明だろ。
0247NAME IS NULL
垢版 |
2017/06/16(金) 10:58:10.69ID:???
plpgsqlは実行しないとtypoなんかがわからないので、c0必須
0248NAME IS NULL
垢版 |
2017/06/16(金) 14:51:07.42ID:???
>>247
これな
存在しないシンボル名使ってたら、CREATEでエラーにしてくれって話だ
0249NAME IS NULL
垢版 |
2017/06/16(金) 15:21:01.24ID:???
raise notice方法の良くないところは、リリース時にそれを削除する必要があること
トリガーをダンプしてバージョン管理とかしてると、ただそれだけでリビジョンが進む
そして、それを忘れやすい
0250NAME IS NULL
垢版 |
2017/06/16(金) 18:08:22.77ID:???
データベース内で完結するテスト方法は苦行なんで、
普通にプログラムからクエリを実行してテストしたほうがいいよ
0251NAME IS NULL
垢版 |
2017/06/16(金) 21:41:16.11ID:???
>>245
Wikipedia なんて底が浅すぎ w
コードを見てテストケースを作るなんて書いてないだろ?
C0, C1 は結果の話
根本的に理解してないのがバレバレだぞ w

>>246
それトリガーの話じゃないだろ
まあ必死だな、ってだけ言っとくよ w
0252NAME IS NULL
垢版 |
2017/06/17(土) 00:34:00.10ID:fomvc+Ad
>>250
0253NAME IS NULL
垢版 |
2017/06/17(土) 00:36:50.28ID:???
>>252
あ、「クエリを発行して」の言いまちがいね
0254NAME IS NULL
垢版 |
2017/06/17(土) 19:19:51.37ID:v6f8+KaI
>>253
発行も実行も普通は同じ意味で使われる。
0255NAME IS NULL
垢版 |
2017/06/17(土) 19:22:53.96ID:v6f8+KaI
データベースに詳しくないのが、何かの言語と結合してテストするようなのとを言ってるけど、それおかしいから。

データベース軽視なんだろうな。
0256NAME IS NULL
垢版 |
2017/06/17(土) 19:34:20.46ID:v6f8+KaI
もともとトリガのテストがしたいという話だが、トリガとトリガが呼び出す関数をいきなり一緒にテストしようとしているのが間違い。

関数は関数でテストして、トリガはトリガがテストして、結合テストはデータのIN/OUTで確認すればいいだけ。

データ観点のテストをあまりしないやつらはかなりいるが、とんでもないから無視した方がいい。
0257NAME IS NULL
垢版 |
2017/06/17(土) 20:14:16.34ID:???
トリガープロシージャって普通の関数として単体で実行できるんだっけ?
やったことないけど、OLDとかNEWとかどう与えるんだろう。
0258NAME IS NULL
垢版 |
2017/06/17(土) 22:29:56.38ID:fomvc+Ad
>>257
Oracleのトリガーと混同してたわ。トリガ関数に普通の関数を呼び出すようにしてないとできないな。
0259NAME IS NULL
垢版 |
2017/06/18(日) 14:38:45.44ID:c1GtVOfY
>>254
いや全然意味違うけどw
始めて本当に日本語勉強した方がいい人見つけたw
0260NAME IS NULL
垢版 |
2017/06/18(日) 17:22:52.65ID:???
はじめて の漢字
0261NAME IS NULL
垢版 |
2017/06/19(月) 11:04:19.39ID:???
>>256
> トリガープロシージャって普通の関数として単体で実行できるんだっけ?

>>237でも言ったが、トリガー関数単体では実行できないので、トリガーのみをテストしたいなら、
INSERT/DELETE/UPDATEを実行して結果を確かめれば良い。

USERSテーブルにINSERTすると、どこかのテーブルのユーザ数合計がトリガーで更新されるとき、
function testUserCountSucc()
{
  prevCount = getPrevUserCount();
  db->execute("INSERT INTO USERS ...");
  currCount = getPrevUserCount();
  assertEquals(prevCount + 1, currCount);
}

自分がそのトリガーを実装する場合は、トリガー内のIFやFORがどういう条件でどうなるかは
わかるはずなので、C0カバレッジになるようにテストケースを増やせば良い。

「ユーザを追加するとユーザ数合計が更新される」というのが、ホストコードで実装されるのか
トリガーで実装されるのかを「実装詳細」と考えるなら、実は上のやり方は好ましくない。

Users::Add()をテストするどこかで、ユーザ数合計が更新されているassertionを追加したほうが良い。
0262NAME IS NULL
垢版 |
2017/06/19(月) 11:05:05.04ID:???
s/getPrevUserCount/getUserCount/
0263261
垢版 |
2017/06/19(月) 11:24:37.78ID:???
なんかもっといろいろ間違ってた。
最初のアンカーは、256じゃなくて>>257

> C0カバレッジ

> C0カバレッジ100%
0264NAME IS NULL
垢版 |
2017/06/19(月) 13:27:42.02ID:???
>>256
どういう意味で結合テストっていってるのかしらんけど、単体テストでもデータのIN/OUTで確認するだろ
0265NAME IS NULL
垢版 |
2017/06/19(月) 14:01:09.16ID:???
「発行」するのは人またはプログラム、「実行」するのはRDBMS、という原理主義者なのか?
0266NAME IS NULL
垢版 |
2017/06/19(月) 14:30:45.06ID:???
>>265
そういうことじゃなくて、俺謎理論だと思うよ
0268NAME IS NULL
垢版 |
2017/06/19(月) 18:12:21.36ID:46JrC3Lz
>>267
どこが苦行なのか?
0269NAME IS NULL
垢版 |
2017/06/19(月) 18:27:58.59ID:???
>>268
・普通のプログラムでは簡単に書ける「共通処理」が書きづらい
 → まぁ、functionで実装していけばいいが、以下の考慮が必要になる
・テストを変更するのにいちいちmigrationが必要
・テストはテスト対象と同一データベース内におく必要がある
・故に、CIでテストしようとすると全員のテストを一つのDBに入れる必要がある
・そうすると、他人とシンボル名が重複しないようにするなどの配慮が必要だとわかる
・スキーマで分割すればいいじゃんとか思う
・グダる

普通にコードで書くのが楽よ
0270NAME IS NULL
垢版 |
2017/06/19(月) 18:32:56.29ID:46JrC3Lz
>>269
コードって別の言語だし、ユーザー、スキーマは結合テストレベルでは本番環境に無理に合わせない。

なんでいきなりシステムテストレベルで確認しようとするのか?

まあ小さいパッケージやWebサイト屋だとそういうテストをする会社や人間が存在するのは知っているが。
0271NAME IS NULL
垢版 |
2017/06/19(月) 18:35:42.61ID:???
>>270
ちょっと言ってる意味がわからない。

例えばトリガーを単発でテストする方法は>>261に書いたとおり。
ユニットテストレベルの話をしてるのだが。
0272NAME IS NULL
垢版 |
2017/06/19(月) 18:50:38.92ID:???
>>270
数千人月以上のメガプロジェクトの五次請けさん、お疲れっす
0274NAME IS NULL
垢版 |
2017/06/19(月) 19:39:55.80ID:???
pl/pgsqlの、お勧めの入門書ってありますか?
ネットである程度調べられるけど、できれば体系的に学びたいのので
0276NAME IS NULL
垢版 |
2017/06/19(月) 22:28:40.44ID:gwyUxO6k
>>272
いろいろあなたがずさんなのはいいけど、回答するような立場ではないことは自覚した方がいい。
0277NAME IS NULL
垢版 |
2017/06/20(火) 10:41:27.92ID:???
>>276
>>270の方が回答するレベルでも立場でもないわなぁ

あと、>>270のいうシステムテストレベルって何だよ?
0278NAME IS NULL
垢版 |
2017/06/20(火) 11:42:46.63ID:???
コード書けないし、>>261レベルのコードでも何やってるかわかんなくてぐだぐだいってるんだろ
0279NAME IS NULL
垢版 |
2017/06/20(火) 12:36:01.52ID:Ce61+VwB
データベースが苦手なのはよくわかった
0280NAME IS NULL
垢版 |
2017/06/20(火) 13:03:55.39ID:???
>>279
最近のレスでは、君が一番ピントずれてるよ
0281NAME IS NULL
垢版 |
2017/06/20(火) 13:06:51.06ID:???
結局、どうやってテストするかって>>261以外誰も示せてないな
0282NAME IS NULL
垢版 |
2017/06/20(火) 13:12:08.50ID:???
>>279
で、君のところではどうやってテストしてるの?
0283NAME IS NULL
垢版 |
2017/06/20(火) 13:20:48.90ID:???
あれかな、Excelの定型処理を自動化しようとしてマクロ書いたら怒られた的な話?
0284NAME IS NULL
垢版 |
2017/06/20(火) 13:34:57.76ID:???
つか、SIerが仕切る大規模開発で、トリガーが許されるケースなんかあるのか?
トリガーはおろか、ストアドすら許されたことがないんだが。
0285NAME IS NULL
垢版 |
2017/06/20(火) 14:43:03.46ID:Ce61+VwB
>>284
そのシステム開発プロジェクトのポリシーだろうけど、理由の一つはプロジェクトメンバーのレベルがあらゆる面で低い、もう一つはデータベースがよくわからなくて上がトリガやストアドファンクションを禁止しているパターン。

こういうそれなりに大きいプロジェクトは総じてクソでうまくいかない。
0286NAME IS NULL
垢版 |
2017/06/20(火) 14:45:59.43ID:Ce61+VwB
>>282
データとSQLを用意してトリガーを動かして実行前と実行後を比較する。

なんでこんなあたりまえのことを言われなきゃわからないのか?
0287NAME IS NULL
垢版 |
2017/06/20(火) 14:50:35.11ID:???
>>285
最も大きい理由は、大抵データベース設計チームが独立していて、そこが物理設計まで行い、
パフォーマンスの責任まで負うから。

次に大きい理由は、スキーマの変更手順が決まっていて、製造工程中に変更とか無理だから。

その次は、大抵大きなプロジェクトでは、データベースをデータストアとしてしか使わないから。
0288NAME IS NULL
垢版 |
2017/06/20(火) 14:52:13.39ID:???
>>286
> データとSQLを用意してトリガーを動かして実行前と実行後を比較する。
それマニュアルでやるの大変でしょ?
>>261みたいにテスト書いとけば、CI/CDにも組み込めるよ。
別にマニュアルでやるのは否定しないが、だからといって>>261を否定するのはおかしいよ。
0289NAME IS NULL
垢版 |
2017/06/20(火) 14:59:19.37ID:???
>>286
それ、>>237と同じじゃんw
>>237を否定してたように見えたが、そうじゃないなら何と戦ってるの?
0290NAME IS NULL
垢版 |
2017/06/20(火) 15:05:28.32ID:???
クエリを発行する手段としてホストコードを使うよ、
単体テストレベルの話ならユニットテストツールも使えるよってだけなんだけど、
> 何かの言語と結合して
> コードって別の言語だし
というメンタリティの持ち主なので、話が全然噛み合わない
0291NAME IS NULL
垢版 |
2017/06/20(火) 15:08:58.31ID:Ce61+VwB
>>288
なんでこれが手動みたいに見えるわけ?
0292NAME IS NULL
垢版 |
2017/06/20(火) 15:12:35.56ID:Ce61+VwB
>>290
あなたみたいにこういうのがテストだと思っているから話がおかしくなる。

単にデータベースを使いこなせないことをごまかすために言っているとしか思えない。
0293NAME IS NULL
垢版 |
2017/06/20(火) 15:14:22.82ID:Ce61+VwB
PostgreSQLは使われ方から細かいテストをする習慣のない人間が使っていることが多いから理解できないのもわかるよ。
0294NAME IS NULL
垢版 |
2017/06/20(火) 15:27:48.04ID:???
>>291
手動じゃないなら、具体的にどうやってるの?
0295NAME IS NULL
垢版 |
2017/06/20(火) 15:32:39.61ID:???
手動じゃないならなんらかの方法で結果を自動チェックしてるわけで、>>261と何が違うんだってことになる
0296NAME IS NULL
垢版 |
2017/06/20(火) 15:38:25.67ID:???
自分以外全部馬鹿病
0297NAME IS NULL
垢版 |
2017/06/20(火) 15:45:59.07ID:Ce61+VwB
>>295
それだと結合テストの部類だろ。少なくともPostgresqlなんだからPostgresqlで完結しろよ。
0298NAME IS NULL
垢版 |
2017/06/20(火) 16:49:13.37ID:???
もしかして手動でSQL実行してトリガが自動で動くから自動って言ってるの?w
まさかそんなわけないか
0299NAME IS NULL
垢版 |
2017/06/20(火) 20:04:13.49ID:BP5gL4BV
>>298
自動テストの「自動」を誤解している。

よくいるのが有名自動テストツールを使用するのが自動テストで、それで確認できるテストだけがテストだと思ってる人間。

画面をポチポチやるのはたしかに手動だが、それ以外は昔からスクリプトでテストする。

あまり自動化しすぎるとテストにならなくなる。すでに完成しているシステムのリグレッションテストなら有効。

リファクタリングもそうだが特定のツールの機能を使うことを指している人間も多い。

話を戻すとここまでpsqlもPL/pgSQLも出てこない。PostgreSQLやMySQLは入門書で他の言語から使うことばかり書かれているから仕方ないとは思う。

データベースはデータの入れ物、SQLはあまりテストしない習慣の人間といくら話しても平行線をたどる。

LAMP環境だとエンタープライズの感覚がわからないひとは多い。
0300NAME IS NULL
垢版 |
2017/06/20(火) 20:04:42.35ID:BP5gL4BV
IDが変わってしまった
0301NAME IS NULL
垢版 |
2017/06/20(火) 22:57:38.13ID:TFo31zTG
好意的に見れば全体的にさほどおかしな理解はしてないようだけど
一つのレスにあれもこれも詰め込みすぎて結局何を言いたいのかさっぱり分からない
知識をドヤりたいんだったらむしろ出し惜しみした方がいいよ
0302NAME IS NULL
垢版 |
2017/06/21(水) 01:15:28.36ID:hwqbFp3v
>>301
だからいままでまともにレスしてないんだけど?
0303NAME IS NULL
垢版 |
2017/06/21(水) 01:16:31.24ID:hwqbFp3v
>>301
あんたも知らないなら俺にかまうなよ。2chレスが気になって仕方ない病か?
0304NAME IS NULL
垢版 |
2017/06/21(水) 10:55:03.30ID:???
見えない敵をマウントご苦労様です
0305NAME IS NULL
垢版 |
2017/06/21(水) 11:01:28.79ID:???
>>299
> よくいるのが有名自動テストツールを使用するのが自動テストで、それで確認できるテストだけがテストだと思ってる人間。
そんな奴はまれだろ

> リファクタリングもそうだが特定のツールの機能を使うことを指している人間も多い。
そんな奴はまれだろ

> SQLはあまりテストしない習慣の人間といくら話しても平行線をたどる。
自分が頓珍漢だから平行線になっている可能性

> LAMP環境だとエンタープライズの感覚がわからないひとは多い。
PostgreSQLスレでそんなこといわれてもね
0306NAME IS NULL
垢版 |
2017/06/21(水) 11:34:18.96ID:???
トリガーを発火させるためにコードを書いたら発狂する人がいるということはわかった w
0307NAME IS NULL
垢版 |
2017/06/21(水) 13:44:23.19ID:???
スクリプトってSQLとは別の言語じゃないんですかね
0308NAME IS NULL
垢版 |
2017/06/21(水) 14:02:33.79ID:hwqbFp3v
>>307
SQLスクリプト
0309NAME IS NULL
垢版 |
2017/06/21(水) 14:06:27.90ID:???
>>308
あおりじゃなくて素直に聞きたいんですが、SQLスクリプトで>>261のようなテストはどう書くんですか?
0310NAME IS NULL
垢版 |
2017/06/21(水) 14:12:32.69ID:hwqbFp3v
>>309
SELECT、INSERT、SELECTでいいでしょう。
0311NAME IS NULL
垢版 |
2017/06/21(水) 14:14:39.67ID:???
>>310
それは、テストがOKだったかどうかは目視で行うってことですか?
0313NAME IS NULL
垢版 |
2017/06/21(水) 17:54:26.46ID:???
まさか、
----
select user_count from ...;
insert into users values (...);
select user_count from ...;
----
を実行しますってことじゃないよな?
0314NAME IS NULL
垢版 |
2017/06/21(水) 18:52:16.88ID:???
ORM採用したら、テストのしようがなく困惑
0315NAME IS NULL
垢版 |
2017/06/21(水) 21:29:34.23ID:hwqbFp3v
>>312
そういうのを使うのがテストかどうかは何をもってよしとするかだろ。

それも結局、単体テストになってねえし。
0316NAME IS NULL
垢版 |
2017/06/21(水) 21:33:31.67ID:hwqbFp3v
いい加減な外国人が作ったもの、やってることが正しいわけではない。青臭いのばかりわいてくるなw
0317NAME IS NULL
垢版 |
2017/06/21(水) 21:39:17.25ID:hwqbFp3v
テストのやり方を知らないから、テスト嫌いなアメリカ人がテストのために作ったものを使うのがテストだと思ってるんだろうな。

テストは泥臭いのも大事。
0318NAME IS NULL
垢版 |
2017/06/21(水) 21:48:05.04ID:hwqbFp3v
>>313
それカウントはおかしいだろw
0319NAME IS NULL
垢版 |
2017/06/21(水) 21:57:19.61ID:???
テストケースに根性が入ってない!
とか言いそう
0320NAME IS NULL
垢版 |
2017/06/22(木) 03:44:57.49ID:???
>>318
カウントじゃなきゃいいだろってことの裏返しでいいんだろか
0321NAME IS NULL
垢版 |
2017/06/22(木) 10:15:17.34ID:???
>>318
> それカウントはおかしいだろw
どこがだよ?

いい加減、どうやってテストするのかちゃんと書けよ。
書けないのか?
0322NAME IS NULL
垢版 |
2017/06/22(木) 10:23:56.70ID:???
まぁ、PostgreSQLもMySQLもOracleもSQL Serverも外国人が作ったんですけどね。
0323NAME IS NULL
垢版 |
2017/06/22(木) 13:45:13.86ID:???
マニュアルでテストしていたのをコードで書くと、テストではなくなってしまうという不思議
0324NAME IS NULL
垢版 |
2017/06/22(木) 13:51:25.26ID:???
>>317
> テストは泥臭いのも大事。
スマートにできる所はスマートにやればいいだけのこと
0325NAME IS NULL
垢版 |
2017/06/22(木) 14:45:11.30ID:???
>>315
> そういうのを使うのがテストかどうかは何をもってよしとするかだろ。
いや、どう考えてもテストでしょ。
テストじゃなければ、何なんだ?
0326NAME IS NULL
垢版 |
2017/06/22(木) 14:48:19.91ID:???
ヘッドレスブラウザを使った、コードによるE2Eテストはテストではない
0328NAME IS NULL
垢版 |
2017/06/22(木) 18:57:40.34ID:???
IDENTIFICATION DIVISION.

なつかしいなw
0329NAME IS NULL
垢版 |
2017/06/22(木) 19:55:39.73ID:5JZUMx3g
まさかこんなスレにまでコボラーが紛れ込んでいたとは
油断も隙もねえなゴキブリ野郎だなコボラーってやつは
0330NAME IS NULL
垢版 |
2017/06/22(木) 23:55:50.22ID:Ck9VN4b3
若気のいたりだろうけど謙虚さがなさすぎだな。結局、教えてくれが本音なのに批判だけして正当化してるだけだろw
0331NAME IS NULL
垢版 |
2017/06/23(金) 12:56:09.07ID:???
>>330
お前のテストのやり方なんて、誰も知りたくないだろ
0332NAME IS NULL
垢版 |
2017/06/23(金) 15:51:47.59ID:???
>>330
ID:hwqbFp3vに対するコメント?
若気というよりじじい臭がすごいんだが
0333NAME IS NULL
垢版 |
2017/06/23(金) 18:04:55.76ID:pI6enatd
>>331
いろいろ考えがあって正解はない。ただデータベースならデータ重視のテストをすべきで、特にデータ型はみてもらいたい。
0334NAME IS NULL
垢版 |
2017/06/23(金) 18:08:08.91ID:???
>>333
だから、どうやってテストしてるのか、はよ書け
0335NAME IS NULL
垢版 |
2017/06/23(金) 18:08:30.49ID:pI6enatd
>>332
ポスグレでテストは適当でいいはむしろ昔のWebサイトの感覚を引きずっているおっさんの考え方。せっかくポスグレが他のRDBMSに対向すべく機能を追加してるのにまともな使い方を広める人間がいないからシェアが落ちてしまった。
0336NAME IS NULL
垢版 |
2017/06/23(金) 18:11:51.71ID:pI6enatd
>>334
なぜデータベースの最初のテストを別のプログラミング言語でテストしてはいけない理由がいまだにわからないのか?
0338NAME IS NULL
垢版 |
2017/06/23(金) 18:16:25.28ID:???
>>336
そんなのいいから、お前のテスト方法はよ書け
0339NAME IS NULL
垢版 |
2017/06/23(金) 19:17:58.13ID:MrOPR6Mg
そろそろ小出しにするのやめてまるっとさらけ出しちゃえばいいのに
一斉に叩かれそうだけど賛同者が現われる可能性もないわけじゃないじゃんw
0340NAME IS NULL
垢版 |
2017/06/24(土) 15:55:07.75ID:???
ぽすとぐれすきゅーえる
ぽすとぐれすえすきゅーえる
0341NAME IS NULL
垢版 |
2017/06/24(土) 15:55:52.38ID:???
ぽすとぐれすきゅーえる
ぽすとぐれえすきゅーえる
0342NAME IS NULL
垢版 |
2017/06/24(土) 17:46:56.56ID:???
ぽすとぐれぇすきゅーえる
0343NAME IS NULL
垢版 |
2017/06/24(土) 18:31:33.28ID:SDKyUFwq
たぶんアメリカ人もポストグレスキューエルと言ってないよな。言いにくいだけ。
0344NAME IS NULL
垢版 |
2017/06/26(月) 14:18:41.09ID:???
>>339
どうせ>>313みたいなクエリ実行して、目視で確認だろ
0345NAME IS NULL
垢版 |
2017/06/26(月) 16:29:03.54ID:I1kQyLDg
>>344
大事なところは目視に決まってんだろw
0347NAME IS NULL
垢版 |
2017/06/26(月) 18:59:45.38ID:M3gY6rN7
>>346
エビデンスを目視で確認だろw
なんなのかさっぱりわからん。
0348NAME IS NULL
垢版 |
2017/06/27(火) 11:47:57.60ID:???
>>347
エビデンスというのが>>313の出力結果だとしたら、それがテストOKなのかどうかが第三者にはわからない

まあ、別途テスト仕様書的なものを書けばいいけど
--
No: 123
ケース: ユーザを追加するとユーザ数がカウントアップされる
テスト方法:
1. 現在のユーザ数を取得する
  select user_count from ...
2. ユーザを追加する
  insert into users values (...)
3. 現在のユーザ数を取得し、1.で取得した数+1になっていることを確認する
  select user_count from ...
--
0349NAME IS NULL
垢版 |
2017/06/27(火) 13:40:41.42ID:LiLTLORO
別人が断片的に言ってることを、批判したいために、自分で話を補完w
0351NAME IS NULL
垢版 |
2017/06/27(火) 14:40:19.90ID:LiLTLORO
>>350
いまどき上げるななんて意味もわからず、下げているんだろw
0352NAME IS NULL
垢版 |
2017/06/27(火) 14:57:22.72ID:???
このスレの最近の流れでは、ageてる奴はアホしかいない
0353NAME IS NULL
垢版 |
2017/06/27(火) 15:17:48.19ID:???
>>335
C0カバレッジ100%を目指せって話をしてるのに、なんで「テストは適当でいい」とかいう話にするのかわけわからん
0354NAME IS NULL
垢版 |
2017/06/27(火) 15:21:13.83ID:LiLTLORO
>>353
そのテスト基準をなぜDBにあてこもうとするのか?
0355NAME IS NULL
垢版 |
2017/06/27(火) 15:23:52.51ID:LiLTLORO
データ観点ではなくてロジックの網羅テストがなぜここで出てくるのか。
0356NAME IS NULL
垢版 |
2017/06/27(火) 15:29:23.11ID:???
>>354
話の流れ的に、トリガーやファンクションをテストする場合の話な
C0カバレッジ100%は、実行するまでエラーチェックされないからだろ
まぁ別に結合テスト(どころか運用)まで未実行の行が残ってようが、俺には関係ないけどな
0357NAME IS NULL
垢版 |
2017/06/27(火) 15:34:58.84ID:LiLTLORO
>>356
C0ガバレッジ100%はテストの一部にすぎないから、これが適当なテストと指摘してるんだよ。
0358NAME IS NULL
垢版 |
2017/06/27(火) 15:39:44.54ID:???
>>357
お前どんだけ話をループさせれば気が済むんだよ

>>237
> C0カバレッジで満足できるならそこでやめる。
> 確証が持てないなら、C1カバレッジになるようなテストを追加する。
それでも不安なら、与えるデータのバリエーションを増やすとかするだろ普通

まぁ>>313レベルのテストをやってる奴にはわからないだろうけどな

お前が上でageてたアホなら、いい加減お前のテスト方法を明示しろや
0359NAME IS NULL
垢版 |
2017/06/27(火) 16:01:25.46ID:LiLTLORO
>>358
それがデータベースの試験にならないとなぜわからない?
0360NAME IS NULL
垢版 |
2017/06/27(火) 16:04:31.30ID:LiLTLORO
データ型が間違ってることに気づくのは最初のテストくらい。
0361NAME IS NULL
垢版 |
2017/06/27(火) 19:37:14.54ID:X5GsG9b9
>>360
最初のテストてどういう意味やで?同じテストばかり2回も3回もするんか?
0362NAME IS NULL
垢版 |
2017/06/28(水) 12:10:20.72ID:???
そりゃテスト結果によって修正入れたらまた同じテストするべ
0365NAME IS NULL
垢版 |
2017/07/05(水) 15:31:05.87ID:???
「データ型が間違ってる」というバグを作ったことないし見たことないんだが、具体的にどういうやつなんだ?
0367NAME IS NULL
垢版 |
2017/07/06(木) 14:15:32.31ID:???
>>366
どういう意味?
create tableが間違ってたってこと?
0368NAME IS NULL
垢版 |
2017/07/06(木) 18:24:01.88ID:???
>>366
なんかよくわからんけど、それがプログラム言語でテストすると検出できないバグという訳か。
0369NAME IS NULL
垢版 |
2017/07/07(金) 21:06:21.99ID:???
うざいやつは大抵 仕事出来ない か現場では嫌われてる。
0370NAME IS NULL
垢版 |
2017/07/07(金) 21:36:26.67ID:ctnQeX+M
どうした急に?w
0371NAME IS NULL
垢版 |
2017/08/05(土) 12:55:37.44ID:???
win10にこいつインストールすると
spotifyも一緒に入れられたりする?
いつのまにか入ってたんだけど。
0372NAME IS NULL
垢版 |
2017/08/05(土) 13:08:43.77ID:???
こいつとはなんだ
0373NAME IS NULL
垢版 |
2017/08/06(日) 11:16:15.41ID:???
こいつとはpostgresqlのこと。

こいつのテーブル見たりするのに
オススメのソフトある?
0374NAME IS NULL
垢版 |
2017/08/06(日) 13:01:39.72ID:???
>>373
pgAdmin3が定番じゃね?
日本語訳がいろいろ怪しいのと、テーブルに直接2バイト文字を入力するのがちょっと面倒なのがアレだけど
0375NAME IS NULL
垢版 |
2017/08/06(日) 16:46:01.67ID:???
pgAdmin4を使って、糞重たくてやってられなかったんだが、3は軽いのですか?
0376374
垢版 |
2017/08/06(日) 18:25:58.23ID:???
>>375
逆に4は使ったことないけど、3で不自由感じたことないよ。不具合といえば、日本語関係と、テーブルの最後100行をシートビューで表示することができないくらい(最後の100行を選択しても最初の100行になる)
0377NAME IS NULL
垢版 |
2017/08/06(日) 18:40:15.36ID:???
>>376
> テーブルの最後100行をシートビューで表示することができないくらい(最後の100行を選択しても最初の100行になる)
そんなことやったことなかったけど、今やってみたらちゃんと最後の100行が表示されたよ
V1.22.2
0378376
垢版 |
2017/08/06(日) 18:44:12.63ID:???
>>377
今試したら直ってた(V1.20.0)
知らないうちにアップデートで直ってたのかも
0380NAME IS NULL
垢版 |
2017/08/06(日) 21:08:01.69ID:???
MySQL/MariaDBに切り替えて、MySQL Workbenchを使おう。
0381NAME IS NULL
垢版 |
2017/08/11(金) 06:50:09.46ID:???
pgadminって日本語弱いんでしたっけ?
ポスタゲはよくわからないです。
0382NAME IS NULL
垢版 |
2017/08/11(金) 08:57:20.70ID:???
1.4はひどかったけど、1.6でマシになった
パフォーマンスも全然違ってびっくりしたわ
0383NAME IS NULL
垢版 |
2017/08/11(金) 10:09:58.38ID:b98NF32s
>>381
3は日本語化が中途半端
0384NAME IS NULL
垢版 |
2017/08/12(土) 01:02:37.65ID:???
オブジェクトやタプルなんかに日本語使わなければ大丈夫なんでしょ。
あんまり使ってないのがバレバレだけどw
0385NAME IS NULL
垢版 |
2017/09/06(水) 22:43:13.52ID:???
9.6.5のリリースノートにあるinformation_schemaの作り直しって
postgres, template0, template1についても必要?
0386NAME IS NULL
垢版 |
2017/09/10(日) 00:32:28.16ID:???
どなたかご存知の方がいたら教えてください。(スレ違いであれば教えてください。)

OracleからPostgreSQLへのマイグレーションをしています。
既存のWebシステムで、JDBCを利用してデータ登録などをしており、そのあたりもマイグレーションしています。

サーバ:Linux
PostgreSQL:9.2
開発環境:Windows10 or Windows8.1
Java:JDK7

Webシステムからtext型のカラムに改行コードを含むデータを登録しようとしています。
Insert時に、「ERROR: 符号化方式"UTF8"で無効なバイトシーケンスです: 0x00」が
出力され登録できません。

PostgreSQLの文字コードは、UTF-8でデータベースを作成しています。
また、Webシステム側の文字コードもUTF-8で作成しています。
JDBCで登録する際には、もともとOracleのnamedparameterを使用していたため、
springのnamedparameterjdbctemplateを使用するように変更しています。

standard_conforming_stringsをoffにしたり、接続URLにclient_encoding=UNICODEを
追加したりしましたが、解決しません。
エスケープするため、E''も試しましたが、namedparameterjdbctemplateの関係か
うまくいませんでした。

同様の事象を経験された方で、解決された方がいましたら、解決方法を教えていただけますでしょうか。
よろしくお願いします。
0387NAME IS NULL
垢版 |
2017/09/10(日) 01:26:01.70ID:???
>>386
ERROR: invalid byte sequence for encoding “UTF8”: 0x00
で検索するといいよ
0x00(NULL文字)はダメだよってこと
0388NAME IS NULL
垢版 |
2017/09/10(日) 21:23:21.58ID:???
Webシステムで改行ってなに?
コードでいうと何にしているのかな?
0390NAME IS NULL
垢版 |
2017/09/12(火) 07:59:33.48ID:RvTqi/j1
>>386
PostgreSQLにUTF-8で無効なバイト列0x00を追加しようとした。
Oracleに不正な文字列が格納されているか、もしくはOracleからPostgreSQLにデータ移行するために使用したツールなどに不具合がある。
0391NAME IS NULL
垢版 |
2017/09/13(水) 00:16:55.86ID:???
<BR>ならエラーにならんだろ
0392NAME IS NULL
垢版 |
2017/09/14(木) 20:25:30.83ID:???
あんたら親切だな!
0393NAME IS NULL
垢版 |
2017/09/14(木) 22:10:06.01ID:???
ヌル文字君は解決したんか?
0394NAME IS NULL
垢版 |
2017/09/14(木) 23:48:05.57ID:???
ubuntuにpostgres入れたんですが
ロールを作るロールが無い状態です
最初はどうやってpostgresのシェルに入ればいいんですか?
0396NAME IS NULL
垢版 |
2017/09/15(金) 00:30:25.54ID:???
>>395
psqlコマンド使えるようになりました。
ありがとうございました
0397NAME IS NULL
垢版 |
2017/09/16(土) 20:47:02.72ID:???
create role ってよくわからない
0398NAME IS NULL
垢版 |
2017/10/06(金) 22:32:45.48ID:liJfTkWb
10!
0399NAME IS NULL
垢版 |
2017/10/08(日) 19:34:06.23ID:???
こんなクソなのを製品に使うアホって
なんなの?
0401NAME IS NULL
垢版 |
2017/10/09(月) 17:19:47.37ID:IaR+bs7d
>>397
ポスグレはそこが独特でユーザーとロールの概念が分かれていない。
0404NAME IS NULL
垢版 |
2017/11/02(木) 19:26:52.67ID:???
明日 その辺の話が聞けるかな。
楽しみぃ。
会場で会いましょう@あーりん推し
0405NAME IS NULL
垢版 |
2017/11/25(土) 08:09:39.32ID:???
複合型とか配列とかJSONデータ型とか、そういう標準じゃないっぽいデータ型は
色んな言語・環境用のドライバインタフェースではどれくらいサポートされているものなんでしょう?
0407NAME IS NULL
垢版 |
2017/11/25(土) 09:31:52.49ID:???
>>406
ありがとうございます。
ではデータベース上では便利そうでも実際の利用を考えると使いにくいことが多そうですね。
0408NAME IS NULL
垢版 |
2017/11/25(土) 13:43:10.19ID:???
psqlのシェルで
db=# が
db-# になってるのはどういう意味ですか?
0409NAME IS NULL
垢版 |
2017/11/25(土) 13:54:54.60ID:8LU8WHb9
なんにでも意味を求めるな、あるがままに受け入れるんだ
0410NAME IS NULL
垢版 |
2017/11/26(日) 19:03:51.65ID:rCRyhJ2E
>>408
適当に答えると、英語表示になっているんじゃないのか?

日本語キーボードの「=」は英語キーボードの「-」。
0411NAME IS NULL
垢版 |
2017/11/26(日) 20:59:43.65ID:???
>>410
サンクス、解決しました

クエリの途中で改行したせいみたいです。;セミコロンでクエリを終わらすと=に戻りました。
0412NAME IS NULL
垢版 |
2017/11/28(火) 00:37:43.64ID:???
ここで良いのか分かりませんが質問させてください。(スレ違いであればご指摘いただけますと幸いです。)

PostgreSQL案件がチラ見してくるので最近触り始めましたが、
oracleでいうパスワードポリシーのようなパスワードの強度を強制する機能は標準では無い認識ですが、
機能を実装する場合は現状では拡張モジュールのpasswordcheckを使う事になるのでしょうか。
0413NAME IS NULL
垢版 |
2017/11/28(火) 01:52:00.45ID:GwTQQ85m
>>412
どういう要件なのかわからないが、PostgreSQLのようなOSSの世界では、必要であれば追加するという考え方をする。

機能を使うのではなく、だれかが作ったものを使う、または自分が作る。

必要だったら拡張モジュールを追加し、不要だったら追加しない。

基本的にLinuxと同じ考え方。
0414NAME IS NULL
垢版 |
2017/11/28(火) 03:54:19.02ID:???
Kerberos認証にしちゃえば
0415NAME IS NULL
垢版 |
2017/11/28(火) 09:23:21.54ID:???
>>413
有り難う御座います。
oracleから切り替えることを想定した場合に、ひとまず機能の網羅性を確認しておりました。
現状提供されているもので足りなそうな機能については新規開発も視野にいれてナレッジに致します。
工数が見合えば自分で作ってみたいですね!

>>414
有り難う御座います。
セキュリティ要件としてはkerberosで満たせるかどうかも踏まえて材料にしていこうかと思います。
0416NAME IS NULL
垢版 |
2017/11/28(火) 12:21:14.96ID:ElK6LRIO
>>413
それってoss特有なん?
必要なのに追加しないって考え方なんかあるのか?
テキトーに言ってんだろお前w
0418NAME IS NULL
垢版 |
2017/11/28(火) 13:28:19.88ID:GwTQQ85m
>>415
ここで聞くより、PostgreSQLのコミュニティで聞いた方がいいよ。ここは他人の書き込みに文句ばかりつけるやつが多いから。
0419NAME IS NULL
垢版 |
2017/11/28(火) 19:56:44.84ID:IrGXLwwF
>>418
お前が間違ったこと言うから質問者のために正してやってんだよw
0421NAME IS NULL
垢版 |
2017/12/13(水) 23:40:47.51ID:???
バージョンアップしてアプリが動かなくなることってある?
例えば9.5.xのxの部分だけあげようと思ってるんだけど
何か気を付けることとかあるかな?
試しにテストサーバたててやってみたら何も問題なく動いてるんだけど
慎重にいきたいので何かデメリットがあるなら教えてほしい
0422NAME IS NULL
垢版 |
2017/12/14(木) 01:25:56.12ID:???
慎重に行きたいならまず公式のドキュメントを読め。
それぞれのバージョンのリリースノートにちゃんと書いてあるから。
0423NAME IS NULL
垢版 |
2017/12/18(月) 00:39:01.46ID:???
慎重にいくのなら、そのままにしとけば?
更新する意義があんの?
0424NAME IS NULL
垢版 |
2017/12/29(金) 11:07:08.13ID:dtNZwIie
誰でも簡単にパソコン1台で稼げる方法など
参考までに、
⇒ 『宮本のゴウリエセレレ』 というブログで見ることができるらしいです。

グーグル検索⇒『宮本のゴウリエセレレ』

PBKPMWLMUY
0426NAME IS NULL
垢版 |
2018/02/14(水) 13:24:01.28ID:???
☆ 日本の、改憲をしましょう。現在、衆議員と参議院の両院で、
改憲議員が3分の2を超えております。『憲法改正国民投票法』、
でググってみてください。国会の発議はすでに可能です。
平和は勝ち取るものです。お願い致します。☆☆
0427NAME IS NULL
垢版 |
2018/02/17(土) 11:33:18.60ID:cmxxvUwJ
pgadmin4のサーバー版ってどうやってインストールするの?
ubuntuでapt-get install pgadmin4したら何かインストールされたけど後何したらいいかわからん
0429NAME IS NULL
垢版 |
2018/02/18(日) 22:41:05.64ID:???
公式ドキュメントのUPDATEの項の例に「アクメ社」ってのが出てきて、何となくナニワ金融道を思い出した
0430NAME IS NULL
垢版 |
2018/02/19(月) 12:20:20.89ID:???
ワーナーのアニメのウサギ、バッグスバニーが出てくるアニメで
コヨーテ御用達の通販会社かな
0431NAME IS NULL
垢版 |
2018/03/03(土) 16:04:58.76ID:???
publicスキーマにユーザ定義関数を置いている場合、
10.3にはおいそれとはアップグレードできんな……。
こんなことになるとは思ってもみなかった。
0432NAME IS NULL
垢版 |
2018/03/11(日) 10:02:43.62ID:???
初めてVMware入れて
初めてsentOS入れて
初めてそこにpgadminでデータベース作った
作ったのはいいけどファイル名が数字の羅列なの変に感じるんだけどそんなもん?
SQLiteやmySQLだとデータベース名を例えばrennsyuuにしたらファイル名もrennsyuuの文字入ったけど
postgreだと入らない。
なんかバックアップとか難しそうだけど慣れるしかないの?
0433NAME IS NULL
垢版 |
2018/03/11(日) 11:02:54.67ID:???
>>432
学校に行って勉強しろよ。英語と算数と計算機科学。
0434NAME IS NULL
垢版 |
2018/03/11(日) 11:35:55.43ID:???
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+----------+----------+---------+-------+-----------------------
postgres | postgres | UTF8 | C | C |
template0 | postgres | UTF8 | C | C | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | C | C | =c/postgres +
| | | | | postgres=CTc/postgres
日本語db | postgres | UTF8 | C | C |
(4 rows)
0435NAME IS NULL
垢版 |
2018/03/11(日) 11:58:19.81ID:???
>>432
そんなセンスのないこと言ってるようじゃそもそもデータベースの設計すら出来ませんよ
0436NAME IS NULL
垢版 |
2018/03/25(日) 18:39:35.34ID:uUt3WCZ6
「.db」形式のファイルはどのようにPostgresへリストアするのでしょうか?
0437NAME IS NULL
垢版 |
2018/03/25(日) 21:14:03.58ID:bZNA9I9J
自己解決

pg_restore -U "ユーザー名" -C -d "DB名" AAA.db
0438NAME IS NULL
垢版 |
2018/03/26(月) 08:52:42.85ID:???
.dbつってフォーマットを正解できるのはエスパーくらい
0439NAME IS NULL
垢版 |
2018/03/31(土) 15:20:12.38ID:8C/tQKpJ
なぜか観てしまう!!サバイバル系youtuberまとめ
http://tokyohitori.hatenablog.com/entry/2016/10/01/102830
あのPewDiePieがついに、初心YouTuber向けに「視聴回数」「チャンネル登録者数」を増やすコツを公開!
http://naototube.com/2017/08/14/for-new-youtubers/
27歳で年収8億円 女性ユーチューバー「リリー・シン」の生き方
https://headlines.yahoo.co.jp/article?a=20170802-00017174-forbes-bus_all
1年で何十億円も稼ぐ高収入ユーチューバー世界ランキングトップ10
https://gigazine.net/news/20151016-highest-paid-youtuber-2015/
おもちゃのレビューで年間12億円! 今、話題のYouTuberは6歳の男の子
https://www.businessinsider.jp/post-108355
彼女はいかにして750万人のファンがいるYouTubeスターとなったのか?
https://www.businessinsider.jp/post-242
1億円稼ぐ9歳のYouTuberがすごすぎる……アメリカで話題のEvanTubeHD
https://weekly.ascii.jp/elem/000/000/305/305548/
専業YouTuberがYouTubeでの稼ぎ方具体的に教えます。ネタ切れしない方法は〇〇するだけ。
https://www.youtube.com/watch?v=Co9a9fHfReo
YouTubeで稼げるジャンルは〇〇動画です。YouTube講座
https://www.youtube.com/watch?v=_Nps8xb5czQ
0440NAME IS NULL
垢版 |
2018/05/16(水) 14:44:27.84ID:???
text型について教えてくたさい。
制限なしの可変長、つまり、長さを気にせず入れられて、短い場合はそのサイズのみディスク容量を使う認識であってますか?
その前提で、普通データベースに入れるテキストって、どれくらいのサイズまでって一般的な指針なんてありますか?
とあるログ(20万文字程度?)を有するデータを月10000個ほど登録します。その際、text型で中身を登録するか、テキストファイルと保存し、そのファイル名を登録するのは、どちらがいいでしょうか?
0441NAME IS NULL
垢版 |
2018/05/16(水) 22:37:47.47ID:???
>>440
> 制限なしの可変長、つまり、長さを気にせず入れられて、短い場合はそのサイズのみディスク容量を使う認識であってますか?

概ねそう。制限無いといってもあるけどね。
まあギガ単位の話なのでそうそうないだろう。

> その前提で、普通データベースに入れるテキストって、どれくらいのサイズまでって一般的な指針なんてありますか?

DBによって違うだろう。
当たり前だけどpgの場合も長ければ長いほどオーバーヘッド高くなってパフォーマンス落ちるよ。可変長はTOASTされて細切れレコードで格納されるので。

> text型で中身を登録するか、テキストファイルと保存し、そのファイル名を登録するか

個人的には好きな方でやれば?レベル。
中身入れちゃった方が楽だよね。
でもその分DBが太るからバックアップとか、障害時とか運用よく考えて決めたら。
0442NAME IS NULL
垢版 |
2018/05/23(水) 21:52:48.15ID:yTjxXYth
DBに入れる→なんかあったときDBAの責任
ファイルに出す→なんかあったときOSインフラの責任

Linuxだろうけど、i-node で耐えうるファイル数やサイズの検証値って意外と誰も持ってなかったりするから
全部自分でやらんといかん面倒やね
0443NAME IS NULL
垢版 |
2018/05/24(木) 23:34:49.44ID:???
責任転嫁の話しか?
そんなの、システムを組んだヤツだわ
DBAやインフラの責任にすなやって思う
0444NAME IS NULL
垢版 |
2018/05/25(金) 10:08:18.80ID:RL/OlVcJ
そういや、どのぐらいの同時接続まで耐えられるかとか知りたいな
もし、何千接続、何万接続に耐えられるような時代になったら、バックエンドの構成もだいぶ変わるだろうし
0445NAME IS NULL
垢版 |
2018/05/25(金) 14:24:08.58ID:???
データなかったでしたっけ?
0446NAME IS NULL
垢版 |
2018/05/26(土) 08:07:21.84ID:???
昔、unixに比べてnfs弱くて使えないって言われてた
0447NAME IS NULL
垢版 |
2018/05/26(土) 08:20:21.96ID:???
nfs?
このスレと何の関係があるか知らんが、あんなもの元から使えない
こくに今の時代使いどころ間違えると終わる
お家で使うくらいに留めるべきもの
0448NAME IS NULL
垢版 |
2018/05/27(日) 01:08:04.85ID:Z87ucrVE
>>444
今はクライアントが直接DBつつかないだろ
Webサーバー、アプリサーバー経由でつなぐんだから、どっちかというと接続数がクリティカルになるのはそっち
0449NAME IS NULL
垢版 |
2018/05/28(月) 20:45:22.81ID:???
接続について教えてください。
私の作ったアプリが常時接続していると指摘されました。
ver9.5で、多分pgAdminのサーバー状態の活動のウィンドウだと思うのですが、クエリーがDISCARD ALLとなっています。
アプリはc#の2005でnpgsqlを使用しており、都度connectionはusingで破棄してるつもりです。
これだと接続はきれないのでしょうか?
DISCARD ALLとはどういう状態でしょうか?
0451NAME IS NULL
垢版 |
2018/06/02(土) 17:07:30.77ID:???
日本だけだよPostgreSQLが使われてるのって
0452NAME IS NULL
垢版 |
2018/06/02(土) 17:26:51.69ID:???
へーそうなんだ
Coverity って言うその業界ではそこそこ有名なツールで使われてたけど日本製なのかな w
0453NAME IS NULL
垢版 |
2018/06/04(月) 10:03:47.52ID:???
マルチマスタ標準実装早くして欲しいなぁ。
0456NAME IS NULL
垢版 |
2018/06/05(火) 11:10:31.37ID:???
日本医師会が医師から集めた会費から開発費を捻出して開発し、フリーソフトとして公開されている日医標準レセプトというソフトは
サーバー機能をUbuntuで動かしデーターベースとしてpostgesqlを採用している
そのユーザー数がおよそ15,000医療機関(医科の病院と診療所)ある
0458NAME IS NULL
垢版 |
2018/06/05(火) 16:22:51.65ID:???
初歩的な質問ですが、教えてください。
postgresqlの事で調べてると、SQL文が出てきます。
例えばセッションの確認とかだと
select 〜 from pg_stat_activity とか。
こういうのは、どこで実行するのですか?
普段、pgAdminしか使わないので。
SQL Shell をデフォルトでログインして実行しても、プロンプトが=#から-#になって、helpすら表示されなくなります。
0459NAME IS NULL
垢版 |
2018/06/05(火) 19:00:00.03ID:???
>>458
SQL分は文末にセミコロン「;」が必要だよ。

=# select * from pg_stat_activity;

とするか、

=# select *
-# from pg_stat_activity
-# ;

な感じで。
0460NAME IS NULL
垢版 |
2018/06/05(火) 19:36:16.93ID:???
>>459
おお!ありがとうございます!!
これで色々試せそうです!!!
0461NAME IS NULL
垢版 |
2018/06/05(火) 20:09:47.53ID:???
pgadmin で遊ぶといろいろ勉強できるね。
psqlだけだと殺風景みたいな。
0462NAME IS NULL
垢版 |
2018/06/06(水) 18:41:50.88ID:Gajfs/TG
遊びから学んでいいのは小学生までやぞ
0463NAME IS NULL
垢版 |
2018/06/07(木) 18:07:16.68ID:???
オラクルを今まで使ってたんですが、カーソルを複数返すときの推奨方法はなんでしょうか?
アウトパラメータで、カーソルを戻す
リターンカーソルで、リターンネクストで複数戻す
今はこれくらいしか、思いつきません
0464NAME IS NULL
垢版 |
2018/06/09(土) 02:30:00.65ID:hcbikbxQ
Oracle使いがオラクルとカタカナで書くとは思えぬ。
0465NAME IS NULL
垢版 |
2018/06/09(土) 22:05:52.67ID:???
オラクルじゃなくてオラコォーな
0466NAME IS NULL
垢版 |
2018/06/09(土) 22:55:41.15ID:???
発音的には オアコォ ね
0467NAME IS NULL
垢版 |
2018/06/09(土) 23:02:06.51ID:???
そういや最近OracleのCMって見ないね
レニークラビッツの曲に合わせてオラコォー連呼してたのとか懐かしい
0468NAME IS NULL
垢版 |
2018/06/09(土) 23:04:11.71ID:???
ロゴが迫ってくる奴だっけ
0469NAME IS NULL
垢版 |
2018/06/10(日) 09:28:39.96ID:???
な CMあったのか
週刊プロレスのCM見てないのと同じレベル
0470NAME IS NULL
垢版 |
2018/06/10(日) 09:33:39.67ID:???
シスコシステムズのCMもあったよね
0472NAME IS NULL
垢版 |
2018/06/10(日) 17:33:49.42ID:???
NULLの代わりにNaN使うことできないの?
0473NAME IS NULL
垢版 |
2018/06/10(日) 20:58:02.19ID:H1Ou+f2f
>>471
ずいぶん古いのを持ってきたな。
0474NAME IS NULL
垢版 |
2018/06/27(水) 13:21:45.22ID:???
pgadmin4って使い勝手良さそうなのかな?pgadmin3の使い勝手が良いので10に移行出来ないw
0475NAME IS NULL
垢版 |
2018/06/27(水) 20:09:05.74ID:Exjj86zV
>>474
4はあまり使われていないと思う。

PostgreSQLをGUIで操作しているひとが少ないせいでよくならない。
0476NAME IS NULL
垢版 |
2018/06/28(木) 04:24:23.72ID:???
学びはじめの頃に3をちょっと使ってみた。
最近4を使ってみたが、なんかバグっぽい感じ?
どちらにしても今となっては必要性を感じないな
0478NAME IS NULL
垢版 |
2018/07/06(金) 23:46:25.27ID:???
>>477
評判がよかったときがあるのか?
0479NAME IS NULL
垢版 |
2018/07/07(土) 01:16:25.99ID:???
オラコーは売れる数減ってきてるのに売上高維持しようとしてるから、毎年値上げしててその額が半端じゃないらしいな。
0480NAME IS NULL
垢版 |
2018/07/07(土) 09:08:27.58ID:???
postgresとmariaにがんばっていただきましょう
0481NAME IS NULL
垢版 |
2018/07/08(日) 00:23:14.36ID:rFyThfKq
>>479
お金を取る方が健全。マイクロソフトなんてビジネスとしては崩壊しかかっている。
0483NAME IS NULL
垢版 |
2018/07/08(日) 00:47:24.96ID:???
>>481
"マイクロソフトのビジネスは崩壊しかかっている"

無知すぎワロタ
0484NAME IS NULL
垢版 |
2018/07/08(日) 02:31:24.04ID:???
売り切りソフトからAzureに軸足を移したことを知らんのね
0485NAME IS NULL
垢版 |
2018/07/08(日) 03:01:26.48ID:???
アズレってなーに
0486NAME IS NULL
垢版 |
2018/07/08(日) 06:33:46.28ID:???
>>481
SQL-Serverもそれなりの対価頂いておりますが…
0488NAME IS NULL
垢版 |
2018/07/08(日) 07:04:37.61ID:???
Microsoft、Azure売上高倍増で予測を上回る増収増益
Microsoftの1〜3月期決算は、Azureを含むクラウド事業が好調で売上高は16%増、純利益は35%増だった。
[佐藤由紀子,ITmedia] 2018年4月27日
http://www.itmedia.co.jp/news/spv/1804/27/news072.html
 米Microsoftは4月26日(現地時間)、2018年第3四半期(2018年1〜3月期)の決算を発表した。「Azure」や「Office 365」などの商用クラウド事業が好調で、2桁台の増収増益だった。

 売上高は前年同期比16%増の268億2000万ドル、純利益は35%増の74億2000万ドル(1株当たり0.95ドル)だった。売上高、1株当たりの純利益ともにアナリスト予測(売上高は258億ドル、純利益は0.85ドル)を上回った。

 Intelligent Cloud部門が今期も好調で、Azure Computeの売上高が93%増だった。部門全体の売上高は17%増の79億ドルだった。

Intelligent Cloud部門
https://i.imgur.com/Wnlwc1L.jpg
0489NAME IS NULL
垢版 |
2018/07/08(日) 07:07:53.77ID:???
 OfficeやLinkedIn、Dynamicsを扱うProductivity and Business Processes部門の売上高は17%増の90億1000万ドルだった。企業向けOffice 365の売上高が42%増と好調。
LinkedInの売上高も37%増と好調だった。企業向けOffice 365のMAUは1億3500万人、コンシューマー向けのMAUは3060万人。

Productivity and Business Processes部門
https://i.imgur.com/FxHA02l.jpg

 Windows、ハードウェア、Xbox、検索のMore Personal Computing部門の売上高は、Windows、ゲーム、Surface、検索が好調で13%増の99億2000万ドルだった。検索は16%増、ゲームは18%増。ハードウェアではSurfaceの売上高が32%増だった。

More Personal Computing部門
https://i.imgur.com/EHknOcd.jpg
0491NAME IS NULL
垢版 |
2018/07/08(日) 23:39:34.33ID:K/+3T+EH
>>490
蓄えた資産がなかったら倒産してたぞ。
0493NAME IS NULL
垢版 |
2018/07/22(日) 03:45:20.98ID:???
>>451
嘘つきだな
こういうヤツに限ってMySQL使ってるとか?
MySQLとかオラクルが豹変したら死ぬぞ?w
0494NAME IS NULL
垢版 |
2018/07/22(日) 03:49:23.74ID:???
>>479
オラクルがJavaの次に狙ってるのはMySQLに何らかライセンス徴収ルール作る事
OSSだから、そんな事有り得ないとMySQLユーザーは言うがJavaも有り得ないと言われてた
でMariaDBに逃げたヤツが一番賢い、と言われる様になると思う
0495NAME IS NULL
垢版 |
2018/07/22(日) 05:13:57.78
PostgreSQLに来た奴は賢くないの
0496NAME IS NULL
垢版 |
2018/07/22(日) 07:25:42.77ID:???
MySQLに商用ライセンスが存在するのは元からやん。
Javaの話もなにか勘違いしてないかい?
0497NAME IS NULL
垢版 |
2018/07/22(日) 11:36:45.83ID:???
でも、MariaDBに逃げとくに越したこたないだろ。
MySQLの先行きが読めないことは間違いないし、そろそろそれぞれで違いが出てきてるみたいだし。
0498NAME IS NULL
垢版 |
2018/07/22(日) 11:55:36.19ID:???
で、なんでこのスレに書き込んだの?
0501NAME IS NULL
垢版 |
2018/07/22(日) 14:43:55.22ID:???
なんでPostgreSQLのスレにMySQLやMariaの信者が居るんだ?
0502NAME IS NULL
垢版 |
2018/07/22(日) 18:34:13.33ID:???
なんでとはいったい?
0503NAME IS NULL
垢版 |
2018/07/22(日) 18:38:30.86ID:???
PostgreSQL信者しか書き込んだらいけないらしい
0504NAME IS NULL
垢版 |
2018/07/22(日) 18:39:58.50ID:???
自分が使っている、気に入っているものがやっぱり一番だと思いたいのが人間だし
それを否定されると自分が否定されていると思っちゃう人もいるわけだし
そのあたりの空気を読めることが望まれているのでしょう
0505NAME IS NULL
垢版 |
2018/07/22(日) 18:54:05.75ID:???
PostgreSQLに全く関係のない話題を書き込まれてもなぁ・・
0506NAME IS NULL
垢版 |
2018/07/22(日) 19:09:06.70
AMDのスレによくIntel派の人がRyzen腐しにくる
0507NAME IS NULL
垢版 |
2018/07/22(日) 20:40:34.32ID:???
メインのスレに書き込める程知識が無い
もしくはスレ住人に相手にされてないor嫌われてる

関係ないスレに書き込む

スレ違いなのでそのスレの住人に怒られる
これを相手にされていると勘違いする ←今ここ

関係ない話題でスレ常駐し始める

徹底的にスルーされるので飽きて居なくなる
もしくはスレ住人に擬態する
0508NAME IS NULL
垢版 |
2018/07/22(日) 21:01:49.13ID:???
DB系のスレは最近、だいたい過疎ぎみだからな。
書き込みがあるだけマシなんでは。w
0509NAME IS NULL
垢版 |
2018/07/23(月) 17:49:47.34ID:???
早くMySQLにライセンス徴収開始されんかなw
Javaと同じ運命にして欲しいわw
0510NAME IS NULL
垢版 |
2018/07/23(月) 18:00:28.15ID:???
>>509
この場合のライセンス徴収はGPL版にも商用版と同じライセンス適用の話ね
0512NAME IS NULL
垢版 |
2018/07/23(月) 21:09:28.38ID:???
>GPL版にも商用版と同じライセンス適用

意味不明すぎるw
0513NAME IS NULL
垢版 |
2018/07/23(月) 22:03:35.25ID:???
>>510はGPLなら常にタダだと思ってるバカ w
0514NAME IS NULL
垢版 |
2018/07/23(月) 23:41:15.75ID:???
>>513
"常に"なんてどこに買い込みしてる?
アホか
0516NAME IS NULL
垢版 |
2018/07/23(月) 23:43:06.33ID:???
>>504
そういう不完全な人の話は聞く耳持たんなw
0517NAME IS NULL
垢版 |
2018/07/24(火) 05:35:41.63ID:???
GPLでも徴収できることを知ってたら>>509みたいなアホレスはしないだろ
>>514は傷口広げて自爆するバカ w
0518NAME IS NULL
垢版 |
2018/07/24(火) 06:23:30.86ID:???
早くオラクルが動く事を祈るw
0520NAME IS NULL
垢版 |
2018/07/27(金) 18:01:07.56
失望しました! PostgreSQLに乗り替えます
0521NAME IS NULL
垢版 |
2018/07/28(土) 13:15:20.88ID:tm98Iqt0
>>519
それはわざとだよ。MySQLを徐々に衰退させたいため。
0522NAME IS NULL
垢版 |
2018/07/28(土) 13:16:49.48ID:tm98Iqt0
>>520
そのポスグレさんは知っているひとが少なくて苦戦する。

しかもシェアが低いのでとにかく情報がなく、ソースコードまで読まなければならない。
0523NAME IS NULL
垢版 |
2018/07/28(土) 13:33:26.03ID:???
まあOracle, MySQL, SQL-Serverの御三家に比べりゃ少ないけどそれ以下の有象無象の中ではトップだから情報が少ないとか言ってるのは単なる情弱
0524NAME IS NULL
垢版 |
2018/07/28(土) 17:42:23.60ID:???
Oracleは早くMySQLユーザーをOracleに移行させたい
よってMySQLのサポートなんておざなりになるのは当然
MariaDB、PostgreSQLが元MySQLユーザーの受け皿になる
0525NAME IS NULL
垢版 |
2018/07/29(日) 01:37:24.34ID:???
Mysqlの人はMariaに行くんだろうな。
0526NAME IS NULL
垢版 |
2018/07/29(日) 02:28:28.20ID:???
型チェックとか厳しく無いものから厳しいものへは移行せんだろうな
0527NAME IS NULL
垢版 |
2018/07/31(火) 01:24:00.18ID:???
WordPressなんかMySQL使用前提だがオラクルがMySQLのライセンス徴収厳密化したらユーザー発狂するだろうな
0528NAME IS NULL
垢版 |
2018/08/11(土) 18:27:16.56ID:???
>>MySQL系は大規模データベースを想定して作られていないせいで、管理は楽だが、物理ファイルと論理ストレージが一緒のため、データ量が多くなってくるとデータベースを止めずに何か変更することが難しくなる。

やっぱりPostgreSQLだな
0529NAME IS NULL
垢版 |
2018/08/11(土) 19:14:41.43ID:???
VACUUMをなくして。どうぞ。
0530NAME IS NULL
垢版 |
2018/08/11(土) 20:19:25.04ID:???
未だにvacuumやっているの?
0531NAME IS NULL
垢版 |
2018/08/11(土) 21:27:50.36ID:???
やらなくてもダメではないけど、しなくてもいいわけでもないらしいが?
どないやねん。
0533NAME IS NULL
垢版 |
2018/08/12(日) 09:56:05.70ID:???
勝手にやってくれます
0534NAME IS NULL
垢版 |
2018/08/12(日) 23:16:01.74ID:???
>>532
Autoをやってる。というかな?
勝手にやってくれているんだから、それでいいやって思うわ。
0535NAME IS NULL
垢版 |
2018/08/12(日) 23:42:58.99ID:???
>>530がvacuumやってるのか?
って言うからvacuum自体は必要だよって言っただけ
設定が必要かどうかは状況による
0536NAME IS NULL
垢版 |
2018/08/12(日) 23:48:21.97ID:cfFh3cqu
どのRDBMSでも自動ではやらないよな。そんなのされたら一時的に使えなくなる。
0537NAME IS NULL
垢版 |
2018/08/13(月) 07:35:09.19ID:???
他のDBもvacumeみたいなのやってるの?
0538NAME IS NULL
垢版 |
2018/08/13(月) 08:45:14.73ID:???
vacuumなんてするのは
うんこ収集車とポスグレぐらいだな
0540NAME IS NULL
垢版 |
2018/08/13(月) 12:45:01.48ID:???
>>539
ども
その時にやるか後でやるかのトレードオフだね。
0541NAME IS NULL
垢版 |
2018/08/14(火) 21:15:03.73ID:oiTTuwPu
質問いいすか?
0542NAME IS NULL
垢版 |
2018/08/15(水) 02:41:57.99ID:???
MySQLスレで質問したら、自分で試せ、で終わるらしい
こっちはOK
0543NAME IS NULL
垢版 |
2018/09/17(月) 02:33:58.97ID:x6EZpwmB
PostgreSQL最高!!!
0544NAME IS NULL
垢版 |
2018/09/17(月) 19:11:48.49ID:???
PostgreSQLを業務利用してからOracleをやることになったんだけど、
それで分かったこと。

PostgreSQLはSQLも設計仕様も、とても綺麗。
Oracleはダメ。信じられないくらいのポンコツ。
0545NAME IS NULL
垢版 |
2018/09/17(月) 19:39:42.56ID:???
主観はどうでもいい
根拠は?
0546NAME IS NULL
垢版 |
2018/09/17(月) 19:42:23.82ID:qUdR5wYD
主観の根拠聞きたいんか?
0547NAME IS NULL
垢版 |
2018/09/18(火) 11:39:30.81ID:???
Oracleで綺麗じゃないとか言ってるのか。MySQLなんか、とんでもなく汚いぞ。
0548NAME IS NULL
垢版 |
2018/09/18(火) 11:53:21.22ID:???
僕は逆に10年以上前にOracleからPostgreSQLに変えたけど、特に困難なく移行できた。
仕様も変なクセがないし他のスタッフからも不満はまったくない。
それにまず社長が喜んだ(笑)
0549NAME IS NULL
垢版 |
2018/09/18(火) 12:32:59.59ID:???
汚さで言えば
MySQL(MariaDB)>Oracle>PostgreSQL
キッチリ手順明確なのがPostgreSQL
どうにかやれば動いてしまうのがMySQL
0550NAME IS NULL
垢版 |
2018/09/18(火) 14:42:36.23ID:???
MySQLはべつに汚くないぞ。
ところどころがちょっといいかげんなだけ。
0551NAME IS NULL
垢版 |
2018/09/18(火) 15:15:57.49ID:???
僕みたいな年寄りには、MySQLは、
・単なるサブセット(だから多少早くても当たり前)、
・マルチバイトが使い物にならない
っていう認識がこびりついてて使う気にならない
0552NAME IS NULL
垢版 |
2018/09/18(火) 15:17:05.14ID:???
あ〜、今は違うんだろうけど
0553NAME IS NULL
垢版 |
2018/09/18(火) 20:21:10.84ID:???
そりゃ二十年近く昔だろ。w
そのころは、ふつうにお安く使えるのはMySQLくらいしかなかったがな。
0554NAME IS NULL
垢版 |
2018/09/19(水) 10:01:57.06ID:???
選択肢増えた今はMySQLでなければ、と言うシーンが無い
0555NAME IS NULL
垢版 |
2018/09/19(水) 19:48:09.82ID:???
PostgreSQLのスレだから言うわけじゃないけど、
もうPostgreSQLしかねーだろ!
他はカス!
0556NAME IS NULL
垢版 |
2018/09/19(水) 22:35:09.37ID:???
>>554
そして、PostgreSQLでなければというシーンもない。
ま、ふつうの人にはどっちも同じ。
0557NAME IS NULL
垢版 |
2018/09/20(木) 23:01:35.16ID:???
>>555 だよね!!

MariaDB、MySQL、FireBirdは触ったことはないが・・・。

OracleはSQLPlusで、操作したことはあるけど面倒。
SQLServerも面倒で触れたこともない。
0558NAME IS NULL
垢版 |
2018/09/21(金) 17:37:17.26ID:???
Oracleは、簡単なことをするにもサブクエリー使わなきゃならないのよ。
なので3階層くらいのサブクエリーは普通になってしまう。
で、可読性が落ちてしまい、自分でも理解不能になる。
人によってはビューやストアドプロシージャで解決しようとして、これらを書きまくりメンテ不能に陥る。

PostgreSQLなら素直で簡潔なSQL書けるのに、と思うよ。
0559NAME IS NULL
垢版 |
2018/09/21(金) 19:53:52.72ID:???
>>558
Oracle PL/SQLのメンテナンスはしんどい
人それぞれでロジックの組み方違う
ライセンス含めOracleはもう厳しい
0561NAME IS NULL
垢版 |
2018/09/22(土) 00:12:04.26ID:???
ここってpostgres派生のgreenplumについて聞いても大丈夫?
ライセンス価格わからなくて困ってる
0562NAME IS NULL
垢版 |
2018/09/22(土) 07:45:07.11ID:???
>>560
具体例はいちいち覚えていない・・・
そんなの覚えても役立つことなどないから覚えようという気がしないので。
ごめんね。

でもPostgreSQLでSQL書ける奴が業務でOracleに乗り換えれば、その不満はすぐに感じると思うぞ。
0563NAME IS NULL
垢版 |
2018/09/22(土) 08:22:58.98ID:???
>>562
なるほど知ったか指摘されたら答えられないってことね
了解
0564NAME IS NULL
垢版 |
2018/09/22(土) 13:29:00.90ID:/G0Wh7Kz
>>558
それは手続きの隠蔽にすぎず、SQLの可読性が下がる。

一度、ソートしないと結果が得られないのに、一度のSELECTでできるかのように思わせる方が問題だ。

このあたりの独自格調のせいで、IT技術者であっても誤解が広まって、SQLはこう書くとこう処理されると言い始める。
0565NAME IS NULL
垢版 |
2018/09/22(土) 13:40:17.48ID:???
なるほど、格調高いレスだな
0567NAME IS NULL
垢版 |
2018/09/22(土) 19:22:35.33ID:Q/qdUs3S
なんで>>558>>564は通じあっとるんやw
バカ同士の会話おそるべしw
0568NAME IS NULL
垢版 |
2018/09/22(土) 22:09:43.40ID:???
>>566
商用利用前提でコミュニティ版でパフォーマンス検証したいけど、そもそも高すぎたら却下されるから、知ってる人がいたら大まかでいいから価格感が知りたかったのですね
0569NAME IS NULL
垢版 |
2018/09/22(土) 22:34:08.21ID:???
>>566
ちなみに商用だとコアライセンスです
0571NAME IS NULL
垢版 |
2018/09/23(日) 23:20:52.25ID:???
>>570
確かにそうですね、すみませんでした
0572NAME IS NULL
垢版 |
2018/09/27(木) 18:00:51.39ID:???
あやまるこたーない
0573NAME IS NULL
垢版 |
2018/09/29(土) 18:05:12.36ID:???
『PostgreSQL全機能バイブル』
鈴木 啓修 著

は良本だな。俺のバイブルになってる。
0574NAME IS NULL
垢版 |
2018/09/30(日) 22:21:19.59ID:???
7のやつは評判よかったね。
10のはさすがにもう出ないか。
0575NAME IS NULL
垢版 |
2018/10/01(月) 20:16:09.31ID:???
10から入門する自分としてはそれほしい…(´・ω・`)
0576NAME IS NULL
垢版 |
2018/10/01(月) 21:21:02.90ID:???
PostgreSQL完全機能リファレンス
なら 8.1 対応ですよ。
10 だってこの本(8.1用)で大丈夫だよ。
0578NAME IS NULL
垢版 |
2018/10/02(火) 12:42:17.66ID:???
宣言的パーティショニングとか10でついた機能とかの説明もほしいの…(´・ω・`)

パーティショニングした列指向テーブル読んでもパラレルクエリにならんのを解決できるか調べたい
0579NAME IS NULL
垢版 |
2018/10/04(木) 02:51:51.68ID:???
SRA OSSやHPが毎年新機能評価報告出してくれるのはありがたい。
0580NAME IS NULL
垢版 |
2018/10/04(木) 12:46:20.19ID:Prg8isVQ
psycopg2の本ってあるの
なかったら誰か書いて、買うから…
0581NAME IS NULL
垢版 |
2018/10/04(木) 18:16:15.01ID:???
sqlはそこそこ書けるプログラマです
インフラ担当が居ない案件に派遣されてしまいました
開発から運用まで行うとしたらどんなことを勉強したらいいでしょうか
0582NAME IS NULL
垢版 |
2018/10/04(木) 19:31:32.77ID:???
バックアップとリストアができりゃOK。
0583NAME IS NULL
垢版 |
2018/10/04(木) 20:02:24.40ID:???
それだけじゃなんも答えられんやろ。
一口にインフラといっても、OSのインストールやらネットワークの設定やら、そもそも物理設置やら、いろいろ。
0584NAME IS NULL
垢版 |
2018/10/04(木) 20:38:39.12ID:zNNbXIbO
インフラ技術者がいないのであれば、そこが重要だと思ってないし、自分の自由にできる可能性が高くてうらやましい。
0585NAME IS NULL
垢版 |
2018/10/06(土) 12:36:54.75ID:???
勉強できるってのはいいね。
聞けない人がいないなら、会社持ちで外にリサーチに行けばいいし。
0586NAME IS NULL
垢版 |
2018/10/06(土) 21:31:32.49ID:???
DB専任の技術者なんて、なんの役に立つの?
0587NAME IS NULL
垢版 |
2018/10/06(土) 23:10:17.97ID:???
まったく
しかも「そこそこ書ける」程度の
0588NAME IS NULL
垢版 |
2018/10/07(日) 16:36:34.88ID:???
sqlはそこそこ書けるプログラマって言ってんだろ。
DB専任なんてどこに書いてあるんだよ。
0590NAME IS NULL
垢版 |
2018/10/07(日) 22:32:08.90ID:???
開発から運用まで、何をしたらいいのか皆目見当もつかない(sqlはそこそこ書ける)プログラマ
でした
0591NAME IS NULL
垢版 |
2018/10/07(日) 23:50:33.04ID:???
楽しんでやればいい。
そんなサイトがいっぱいある。
0592NAME IS NULL
垢版 |
2018/10/08(月) 20:08:30.46ID:???
>>581
1.システム化したい業務の聞き取り
2.システム化したい業務の仕様書作成
3.実作業
0594NAME IS NULL
垢版 |
2018/10/14(日) 19:50:54.62ID:???
この画像リンクなんなんマジで
0597NAME IS NULL
垢版 |
2018/10/16(火) 09:52:18.32ID:???
消されててわかりません
0599NAME IS NULL
垢版 |
2018/10/21(日) 12:09:56.42ID:???
まじすか 速いすね
0601NAME IS NULL
垢版 |
2018/10/25(木) 14:18:17.40ID:???
AmazonによるPostgreSQLへのなかなか貴重な貢献だ
0602NAME IS NULL
垢版 |
2018/10/25(木) 23:58:15.58ID:???
>>601
俺の第一印象も「Oracleすげー」より、「これでポスグレが一皮むけるな」だった
0604NAME IS NULL
垢版 |
2018/10/26(金) 12:54:44.74ID:???
記者が、自分で勝手にストーリーをつくってしまって、あわない理屈を排除するのは、どこの国でもおんなじか。。。

たしかに、セーブポイントの仕様が違うなら違って当然で、その仕様の通りにしてないアプリが完全に悪いわな。
0605NAME IS NULL
垢版 |
2018/10/26(金) 12:56:40.39ID:???
無能なプログラマーが、トランザクションの中で無用なsavepointを連続して発行していたのが原因の模様。
アマゾンのシステム開発してる人の中にも、こういうレベルの人がいるんだな。
0606NAME IS NULL
垢版 |
2018/10/26(金) 13:30:19.36ID:???
PostgreSQLの仕様分かって無いヤツがプログラム作った結果か
有り得る話だな
0607NAME IS NULL
垢版 |
2018/10/27(土) 16:27:00.62ID:???
トラブルはあったにせよ、Amazonほどの規模のとこでもPostgreSQLが使われるんだって思うと感慨深いなぁ
0608NAME IS NULL
垢版 |
2018/10/27(土) 17:00:16.92ID:???
AmazonにはAurora PostgresとAurora MySQLがある中で、Aurora Postgresを選んだというのもいいね。
徹底的に比較した上でPostgresを選んだんだろうから。
0609NAME IS NULL
垢版 |
2018/10/27(土) 17:26:37.35ID:???
Oracleから移行ってことなら比較以前にMySQLは選択しにくいよね
0610NAME IS NULL
垢版 |
2018/10/27(土) 17:47:03.47ID:???
MySQLのほうが性能は高いかもだけど、機能は少ないからね。
0611NAME IS NULL
垢版 |
2018/10/27(土) 18:52:30.87ID:???
単純に「MySQLのほうが(PostgreSQLよりも)『性能』が高い」っていうのはどうかな?
0612NAME IS NULL
垢版 |
2018/10/27(土) 18:52:50.77ID:???
だからMySQLならMariaDBだろ。。
0616NAME IS NULL
垢版 |
2018/10/27(土) 20:40:45.03ID:???
MySQLはその内Javaの様にランタイムライセンス課されて終わるよ
Oracleの狙いはそこ
今現在、そこそこシェア取ってるから
0617NAME IS NULL
垢版 |
2018/10/27(土) 20:46:56.60ID:???
元から有料の商用ライセンスがあるのに何言ってんの
0619NAME IS NULL
垢版 |
2018/10/27(土) 21:36:22.33ID:???
アマゾンがpostgresって事実が凄いね
0621NAME IS NULL
垢版 |
2018/10/28(日) 07:41:37.02ID:???
>>617
無償版をJava同様、6ケ月毎の更新にするって話
で、OpenJDKの様に無償版をOpenMySQLにして6ケ月毎にバージョンアップする
6ケ月毎にバージョンアップって現場ではやってられないので、MySQL→MariaDB移行にする中小企業が増える
MySQLが廃れる方向って話
0625NAME IS NULL
垢版 |
2018/10/28(日) 14:59:58.96ID:???
MySQL使いが悔しくて荒らしてるw
0626NAME IS NULL
垢版 |
2018/10/28(日) 16:04:38.38ID:???
>>625
勘違い

MySQLと比べてるのが滑稽なだけ
せめて比べるとしたらMariaDBだろっていうツッコミが>>612なのに
なぜかそれに過剰反応してる信者(>>613)が一人いるだけ
0627NAME IS NULL
垢版 |
2018/10/28(日) 16:40:20.82ID:???
MariaDBと比較と言っても実質MySQLの無償版と同じだからね
0628NAME IS NULL
垢版 |
2018/10/28(日) 17:07:09.82ID:???
そろそろ意外と違うらしいよ?
0629NAME IS NULL
垢版 |
2018/10/28(日) 17:35:03.21ID:???
別に何と比べようが各人の自由だろ
滑稽とか言う方が滑稽だよ
0630NAME IS NULL
垢版 |
2018/10/28(日) 18:56:42.22ID:???
アマゾンがオラクルからDB移行した件で、Amazon AuroraのPostgresと同じくAuroraのMySQLの話題の流れで、アホが突然MariaDBガーとか言い出したからバカにされたんだろw
0631NAME IS NULL
垢版 |
2018/10/28(日) 19:52:48.40ID:???
と思いたいってことかな
0633NAME IS NULL
垢版 |
2018/10/28(日) 21:49:02.74ID:???
>>632
ちょっと何が言いたいのかわかんないっすね
0635NAME IS NULL
垢版 |
2018/10/29(月) 19:02:36.62ID:???
AWSのAuroraがMariaDBをサポートしてたら、こんなに(?)バカにされなくてすんだのにね
可哀想だね(´;ω;`)
0637NAME IS NULL
垢版 |
2018/10/30(火) 10:48:39.40ID:???
恥の上塗り(´゚ω゚`)
0638NAME IS NULL
垢版 |
2018/12/06(木) 22:35:34.47ID:???
ポスグレ入れてたサーバのjavaを削除した後にポスグレのサービスが起動しなくなったのですがポスグレはjavaに依存しないですよね?
0639NAME IS NULL
垢版 |
2019/01/04(金) 11:57:23.15ID:???
ダンプサイズって上限あるのか知りたい。。50GBとか100GBとかいけるもの?
0640NAME IS NULL
垢版 |
2019/01/05(土) 09:01:40.58ID:???
>639
自己解決しました。いけるんですね。
0641NAME IS NULL
垢版 |
2019/01/11(金) 16:52:13.04ID:???
DBMS of the year 2018 受賞おめでとうございます
0642NAME IS NULL
垢版 |
2019/01/19(土) 11:04:26.28ID:???
初めまして
9.3.5から9.3.22にアップデートしたいのですが
ググってもメジャーアップデートの方法しかヒットせず困っております。
マイナーアップデートの方法が丁寧に説明されている書籍やHPや
教えていただけるイケメンはいらっしゃらないでしょうか?
0643NAME IS NULL
垢版 |
2019/01/19(土) 11:10:19.27ID:???
>>642
OSはlinux レッドハットの6になります。
0644NAME IS NULL
垢版 |
2019/01/19(土) 11:55:12.08ID:???
公式の文書が一番のイケメンだからよく読め
0645NAME IS NULL
垢版 |
2019/01/19(土) 13:13:52.22ID:???
9.3系はEOLになってしまいましたよ。
0647NAME IS NULL
垢版 |
2019/01/19(土) 18:32:29.81ID:???
>>642
DB停止して上書きインストールするだけやで。
9.3.22のrhel6用のrpm用意して
yum localinstall rpm列挙
でよいかと。
0648NAME IS NULL
垢版 |
2019/01/19(土) 19:02:34.99ID:???
>>647
ありがとうございます!
そのあたり調べてみます。
>>645
完全に外部から閉鎖している社内システムなんでマイナーアップデートすら必要ないんですが
外部監査で指摘されてスーパースーパーハッカーがキャッツアイみたいに侵入したら
だめだよね?って真顔でいわれてSEチームが全員じゃぁおれら辞めるわって言いだして
折衷案ですることになった非常にくだらない件でしてEOLは関係ないんです
0649NAME IS NULL
垢版 |
2019/01/19(土) 19:36:38.20ID:???
>>648
あほすぎ。w
たいへんやな。
そこまでいかれたら、DBなんかなんでもおんなじやのに。
0650NAME IS NULL
垢版 |
2019/01/20(日) 03:10:39.36ID:???
俺ならじゃあお前らやめろと言うな
0651NAME IS NULL
垢版 |
2019/01/20(日) 03:21:07.11ID:???
>>648
言いたいことは分かるが草生える
そう言う話になってる時点で保守契約とかもしてなさそうなのでその時点でどうなの?って気はする
0652NAME IS NULL
垢版 |
2019/01/20(日) 06:53:17.04ID:???
俺んとことなんて、内部監査で同じこと言われる。
しかも言う側はエンジニアではない素人だ。

何も知らないカスどもと思うけど誰も何も言えない。
折衷案まで漕ぎつけるだけ、まだいい。ウラヤマシ。
0653NAME IS NULL
垢版 |
2019/01/20(日) 11:49:48.77ID:???
>>651
保守なんか関係あるか?

オレはこんふうに想像。w
1 上層部が適当に外部監査を依頼。
2 とくに問題なし。
3 監査側としてはなにか指摘しないといけない。
4 どうでもいいことをムリヤリ指摘。
5 上層部が真に受ける。
0654NAME IS NULL
垢版 |
2019/01/20(日) 15:24:36.13ID:???
>>653
完全に内部専用のサーバを外部業者入れて監査する厳しさがあるなら、内部専用でも本番環境なら保守契約くらいやっていそうなものだ
書いてる内容的にそうでも無さそうだから、体制の矛盾を感じて不思議に思っただけ

自分的には、会社のポリシーでEOL製品の継続利用はNGってなってるだけじゃねーのと
0655NAME IS NULL
垢版 |
2019/01/29(火) 08:13:39.00ID:???
マイナーアップデートしたらキャッツアイに勝てるの?
0656NAME IS NULL
垢版 |
2019/02/23(土) 10:50:46.95ID:???
pgAdminでテーブルを作ろうとしているのですが、データ型で[ ]がついてるものとそうでないものの違いは何ですか?
データ型の横に別に長さを指定もできるようなので混乱しています。
0657NAME IS NULL
垢版 |
2019/02/23(土) 12:23:07.69ID:???
配列じゃねーの?
0658NAME IS NULL
垢版 |
2019/02/23(土) 14:51:36.48ID:???
配列を1レコードに格納できるんですね。
0659NAME IS NULL
垢版 |
2019/03/01(金) 18:18:12.68ID:???
クラスタリングするならpg pool 2が良いのでしょうか?
0660NAME IS NULL
垢版 |
2019/03/01(金) 21:23:34.33ID:Z1dNjNNK
クラスタリングするな
0661NAME IS NULL
垢版 |
2019/03/02(土) 08:19:53.14ID:???
>>660
あかんか?性能がほしいんやが。
0664NAME IS NULL
垢版 |
2019/03/02(土) 11:07:55.25ID:???
ポスグレって初回アクセス遅くないですか?
0665NAME IS NULL
垢版 |
2019/03/03(日) 20:26:54.63ID:8NWgRq1j
ポスグレって初回アクセス遅くないです
0666NAME IS NULL
垢版 |
2019/03/05(火) 12:47:02.99ID:???
最初のセレクトは遅いかも
0668NAME IS NULL
垢版 |
2019/03/05(火) 16:27:25.83ID:???
アホにかまうな、
アホに反応するな、
が最適解
0669NAME IS NULL
垢版 |
2019/03/05(火) 20:48:03.98ID:???
>>666
だよね!


>>667
SQLServerと比較すると初回アクセスのみ結構遅い
0670NAME IS NULL
垢版 |
2019/03/05(火) 23:46:00.67ID:???
キャッシュないもんそら遅いわな。
0671NAME IS NULL
垢版 |
2019/03/06(水) 20:03:46.28ID:???
DB単体のスピードを追求する場面ってあるの?
大抵は回線とかクライアント側の端末がボトルネックになってる気が
0672NAME IS NULL
垢版 |
2019/03/06(水) 20:35:04.60ID:???
>>671
> DB単体のスピードを追求する場面ってあるの?
はっ?

> 大抵は回線とかクライアント側の端末がボトルネックになってる気が
でかいシステムだと何台のクライアントからアクセスあると思ってるんだよw
0673NAME IS NULL
垢版 |
2019/03/06(水) 22:24:48.20ID:???
読み取りを分散させるとこまで出来ました
更新を分散させつつ整合性を保つ魔法はまだわかりません
0674NAME IS NULL
垢版 |
2019/03/07(木) 07:23:06.56ID:6UNHudHL
>>671
たいていDB上にデータとビジネスロジックを置くので、DB以外に速度を求められる場所がない
0675NAME IS NULL
垢版 |
2019/03/07(木) 19:37:38.11ID:???
>>669
初回アクセス速度を速くしたけりゃ、共有バッファを調整して、DB起動時に一度そのSQLを実行してテーブルをメモリに乗せときゃいいんじゃね?
0676NAME IS NULL
垢版 |
2019/03/10(日) 12:13:13.36ID:???
というSQLを起動時にやってるという話を聞いた事がある。
0677NAME IS NULL
垢版 |
2019/03/10(日) 21:24:50.77ID:???
キャッシュウォーミングとかで検索!
0679NAME IS NULL
垢版 |
2019/03/25(月) 22:40:04.95ID:???
psqlのロールとシェルのユーザって同じ名前じゃなきゃログインできないの?
0680NAME IS NULL
垢版 |
2019/03/26(火) 00:02:11.79ID:???
設定次第。pg_hba.confでidentになってるとそうなる。
0681NAME IS NULL
垢版 |
2019/03/26(火) 00:10:08.12ID:???
hbaってふんふんってわかった気になるけど、SSLでやろうと思ったりすると
結構迷うよね。
0682NAME IS NULL
垢版 |
2019/03/26(火) 23:45:18.73ID:???
>>680
mda5に直したらいけましたサンクス

新規のロールってグラントしてもらわないとログインすらできないの?
0683NAME IS NULL
垢版 |
2019/03/27(水) 03:09:43.83ID:???
肥大化したテーブルから古いデータをバックアップテーブルに退避して、その後削除するようなクエリを書きたいのですが、そもそもこのような対応は一般的なのでしょうか?
他に一般的な手法があれば教えてください。
0686NAME IS NULL
垢版 |
2019/03/28(木) 12:35:37.42ID:???
delete from tbl;
でいいのでわ
0687NAME IS NULL
垢版 |
2019/03/29(金) 02:16:08.60ID:???
毎日決まった時間に指定のクエリを実行したいのですが、pgAdmin4でそのようなことは出来ますか?
0690NAME IS NULL
垢版 |
2019/04/02(火) 16:27:39.43ID:???
OSS-DB試験受けた人いる?
0692NAME IS NULL
垢版 |
2019/04/06(土) 01:47:56.89ID:???
シルバ持ってるよ
0693NAME IS NULL
垢版 |
2019/04/08(月) 14:46:26.85ID:???
なにかの役にたった?
0694NAME IS NULL
垢版 |
2019/04/10(水) 01:18:01.42ID:???
履歴書に書くネタが増えただけ
0695NAME IS NULL
垢版 |
2019/06/13(木) 03:09:12.05ID:???
住信SBIネット銀行、オンプレオラクルをAurora??PostgreSQLに移行。性能や可用性もPoC上、問題ないと判断。83%コスト削減。銀行の勘定系のクラウド化の時代なんだな。もはや、放送のシステムやマスターもクラウド化できる時代や
0696NAME IS NULL
垢版 |
2019/06/13(木) 16:25:04.23
銀行はオンプレミスでないと流石に個人情報漏れが怖いわ
クラウドってIntel のCPU積んでるだろうから、毎月追加更新される脆弱性報告見てると不安が増すばかり
自社はしっかりシステム作ってても、同じサーバで稼働してる別会社のシステムが杜撰だったとして
セキュリティ突破されようものなら、煽りを食って連座して突破されてしまうわけだし

逆に言うと、銀行系のシステムを狙ってわざとセキュリティの甘いシステムを、
銀行が使用してるクラウドサーバと同じサーバで稼働させてクラックしてそこをつたって銀行の情報抜き取るとか
そういう新型の犯罪が成立しそうだし

銀行や政府は漫然とクラウドを利用するべきではない
0697NAME IS NULL
垢版 |
2019/06/13(木) 19:30:07.35ID:???
>>696
> 逆に言うと、銀行系のシステムを狙ってわざとセキュリティの甘いシステムを、
> 銀行が使用してるクラウドサーバと同じサーバで稼働させてクラックしてそこをつたって銀行の情報抜き取るとか
自分が稼働させたサーバーを自分でクラックするのかw
アホすぎる…
0698NAME IS NULL
垢版 |
2019/06/13(木) 20:42:10.78ID:???
>>697
今の仮想環境を知らんのか。
アホすぎる。
0699NAME IS NULL
垢版 |
2019/06/13(木) 22:38:50.78ID:???
>>698
へー、今の仮想環境だと自分で設置したサーバーをわざわざクラックする必要あるんだw
ちょっと詳しく説明してくれるかな
0700NAME IS NULL
垢版 |
2019/06/13(木) 23:03:36.56ID:???
うーん、ちょっと噛み合ってなくてワロタ
0701NAME IS NULL
垢版 |
2019/06/14(金) 00:32:19.97ID:???
結局説明できないのかw
0702NAME IS NULL
垢版 |
2019/06/14(金) 23:15:50.80ID:???
授業料を払うつもりがあるんなら、説明したることを考えたってもええで?
タダというんはムシがよすぎるやろ。w
0703NAME IS NULL
垢版 |
2019/06/14(金) 23:36:01.19ID:???0
クラウドサービスを理解してなさそうw
0704NAME IS NULL
垢版 |
2019/06/15(土) 10:14:26.34ID:???
うーん、ちょっと噛み合ってなくてワロタ
0706NAME IS NULL
垢版 |
2019/06/16(日) 13:15:51.14ID:???
admintool4の使い勝手が良い
Windows10にもdebian9にもpostgreSQLを入れている。
0707NAME IS NULL
垢版 |
2019/06/19(水) 02:22:05.94ID:???
admintool4ってググってもこのスレしか出てこないけどpgAdmin4のこと?
0709NAME IS NULL
垢版 |
2019/06/19(水) 21:31:08.45ID:???0
市民権を獲た用語で会話しようよ……
0710NAME IS NULL
垢版 |
2019/06/20(木) 19:09:36.26ID:???
>>709
そんな難しい用語ださなくていいから、もっと単純にいこうぜ
0711NAME IS NULL
垢版 |
2019/06/20(木) 19:33:32.53ID:???
同じメモリー8GB
内部ストレージ500GB(HDD)Windows10
内部ストレージ240GB(SSD)debianGNULinux strech9

Windows10のpgAdmin4が初期起動スピードでLinuxに1分以上の差をつけられて
負けたわ糞
0713NAME IS NULL
垢版 |
2019/06/21(金) 01:01:10.86ID:???0
>>710
『市民権を獲た○○』はいくらなんでも市民権を獲たイディオムだろう……
0714NAME IS NULL
垢版 |
2019/06/21(金) 04:59:30.51ID:???
>>713
初回起動だけは我慢するしかない
2回目以降は同等に早い
0715NAME IS NULL
垢版 |
2019/07/03(水) 14:27:59.47ID:???
postgreSQLを勉強するついでに資格取りたいんだけど、OSS-DBしかない感じ?
参考書が古い・・・
0716NAME IS NULL
垢版 |
2019/07/03(水) 19:41:30.29ID:???
意味ない。取るならDBスペシャリスト一択。
0717NAME IS NULL
垢版 |
2019/07/04(木) 12:59:21.92ID:LHv+sZG8
複数の外部キーを複合主キーとして使うテーブルを作りたいんですが、以下のケースの場合はどうすればよいでしょうか?
---------------------------
クラス番号(主キー) | クラス名 |
       1     |  A組  |
---------------------------

---------------------------------------------
クラス番号(外部キー) | 出席番号(非ユニーク) | 氏名 |
      1       |      10        | Cさん|
---------------------------------------------
※クラス番号と出席番号の組み合わせで複合主キー

上記テーブルがある状態で、以下のテーブルを作りたいのですが、
出席番号が非ユニークな為、外部キーに出来ません。
サロゲートキーを使わずに、クラス番号と出席番号の組み合わせで複合主キーにしたいのですが、どうすればよいでしょうか。
------------------------------------------------
クラス番号(外部キー) | 出席番号(非ユニーク) |  情報 |
------------------------------------------------
0718NAME IS NULL
垢版 |
2019/07/04(木) 15:07:07.21ID:???
こうかな?

CREATE TABLE class (
id int NOT NULL PRIMARY KEY,
name text NOT NULL
);
INSERT INTO class(id,name) VALUES (1,'A組');
INSERT INTO class(id,name) VALUES (2,'B組');

CREATE TABLE person (
id int NOT NULL REFERENCES class(id),
number int NOT NULL,
name text NOT NULL,
PRIMARY KEY (id, number)
);
INSERT INTO person(id,number,name) VALUES (1,10,'Cさん');
INSERT INTO person(id,number,name) VALUES (2,10,'Dくん');
INSERT INTO person(id,number,name) VALUES (2,11,'Eくん');

CREATE TABLE info (
id int NOT NULL,
number int NOT NULL,
info text NOT NULL,
FOREIGN KEY (id, number) REFERENCES person (id, number)
);

INSERT INTO info(id,number,info) VALUES (1,10,'Cさんの情報1');
INSERT INTO info(id,number,info) VALUES (1,10,'Cさんの情報2');
INSERT INTO info(id,number,info) VALUES (2,10,'Dくんの情報1');
INSERT INTO info(id,number,info) VALUES (2,11,'Eくんの情報1');
/* INSERT INTO info(id,number,info) VALUES (1,11,'外部キー制約でエラー'); */
0719NAME IS NULL
垢版 |
2019/07/04(木) 15:36:31.92ID:???
>>718
神様ありがとうございます!
以下の1行をプラスして、完全に想定通りに動きました!
>>PRIMARY KEY (id, number)

CREATE TABLE info (
id int NOT NULL,
number int NOT NULL,
info text NOT NULL,
FOREIGN KEY (id, number) REFERENCES person (id, number),
PRIMARY KEY (id, number)
);
0720NAME IS NULL
垢版 |
2019/07/04(木) 15:58:03.84ID:???
すみません。動いたと思ったら微妙に違っていました。
以下の制約を付けて、正常に動きました!
ALTER TABLE info ADD CONSTRAINT info_fkey FOREIGN KEY(id, number) REFERENCES person (id, number)
0721NAME IS NULL
垢版 |
2019/07/08(月) 21:33:25.93ID:???
createuser -P -E ロール名
でパスワードを設定しても
そのパスワードを要求される場面がない。
CREATE ROLE ロール名 WITH PASSWORD '****';
でもそう。
なんのためのパスワードなんだろう?
localhostだけで使うなら無用なのかな。
0722NAME IS NULL
垢版 |
2019/07/09(火) 00:12:06.67ID:???
pg_hba.confでtrustになってるとか?
0723NAME IS NULL
垢版 |
2019/07/09(火) 10:46:32.59ID:???
pg_hba.confの設定はいじっておらず、
md5かpeerのいずれかです。
trustは一つもありません。
0724NAME IS NULL
垢版 |
2019/07/09(火) 12:09:18.95ID:???
peerで認証されてるんだろう
LinuxのアカウントとPgのロール名が同じで
0725NAME IS NULL
垢版 |
2019/07/09(火) 20:15:55.28ID:???
>>724
そうかもしれません。異常な挙動でなくて安心しました。
助言くださってありがとうございました。
0726721
垢版 |
2019/07/13(土) 14:18:04.22ID:???
pg_hba.confという設定ファイルの中の
local all all peer

local all all md5
に変更することでパスワードを指定して作成したロールから
localhostのPostgreSQLサーバに接続するときにパスワードを
要求されるようになりました。
0727NAME IS NULL
垢版 |
2019/07/16(火) 22:19:30.50ID:???
datdbaseをCREATEする権限をグラントするコマンドを教えてちょうだい
0731NAME IS NULL
垢版 |
2019/07/19(金) 00:31:07.94ID:???
windowsなのですがまずdvdrental.tarをインポートするやり方からわからないです
教えてください
0732NAME IS NULL
垢版 |
2019/07/19(金) 17:48:50.62ID:???
>>731
ttps://dev.classmethod.jp/etc/postgresql-create-sample-database/
0733NAME IS NULL
垢版 |
2019/07/19(金) 19:45:52.70ID:???
そのまま丸写しではできなかったですがあちこちにに書いてあることを総合したらなんとかできました
どうも
0735NAME IS NULL
垢版 |
2019/09/21(土) 15:47:50.40ID:???
pgadmin4でクエリエディタの内容をコピペする方法ないの?どうするのこれ?
0736NAME IS NULL
垢版 |
2019/09/21(土) 15:57:33.31ID:???
自己レス
ctrl+cかそうかわかった
0737NAME IS NULL
垢版 |
2019/10/12(土) 16:35:01.65ID:X6qnpHgK
職業訓練でポスグレやってるんですが、自宅でインストールして使おうとしたらコレが出たんですがどうすれば使えるようになりますか?
https://i.imgur.com/xDqFtox.jpg
0739NAME IS NULL
垢版 |
2019/10/12(土) 21:16:57.32ID:X6qnpHgK
>>738
管理者としてインストールしました
何回か再インストールしてもダメなんです
0740NAME IS NULL
垢版 |
2019/10/12(土) 21:19:47.52ID:???
単にサーバー起動してないとか
0741NAME IS NULL
垢版 |
2019/10/12(土) 21:39:06.71ID:???
>>739
Windowsでの話?

環境何も書いてないのはエスパー求むってことか?
0742NAME IS NULL
垢版 |
2019/10/12(土) 21:41:14.77ID:???
あっ、psqlコンソールだな、スマン
0743NAME IS NULL
垢版 |
2019/10/12(土) 21:59:56.75ID:X6qnpHgK
>>741
Windowsです
サーバーソフトはtomcatを使ってます
0744NAME IS NULL
垢版 |
2019/10/12(土) 22:23:00.80ID:???
一応聞くけどポスグレのインストールはデフォルトでエンター連打でインストールしたって理解でいいか?
0745NAME IS NULL
垢版 |
2019/10/12(土) 22:31:20.55ID:???
>サーバーソフトはtomcatを使ってます

唐突に謎すぎるw
もしかしてデータベースサーバーというものを知らない?
0746NAME IS NULL
垢版 |
2019/10/13(日) 07:05:44.59ID:???
tomcatはjavaサーバーで今の問題には
特に関係ないからいいとして、
1.postgresqlをloalhostにインストールしているか?
2.postgresqlをport5432でインストールしているか?
3.windows上のサービスとして起動しているか?

この辺教えて
0747NAME IS NULL
垢版 |
2019/10/13(日) 07:21:08.32ID:???
それ以前にこれまでしてきたことと、その結果を時系列で書いてもらわんと
誰も何も分からないと思う。
0748NAME IS NULL
垢版 |
2019/10/13(日) 19:42:33.09ID:???
>>746
それを答えられるヤツは、あんな質問をしないやろ。w
0750NAME IS NULL
垢版 |
2019/10/13(日) 23:34:58.96ID:???
職業訓練でそんな授業あるんか
ええな
俺も行きたいわ
0751NAME IS NULL
垢版 |
2019/10/14(月) 10:33:21.47ID:???
>>750
15年ぐらい前だけど職業訓練の一環でうちの会社に訓練生が現場実習として2週間ぐらい来たことあったのでそう言う奴かも
0753NAME IS NULL
垢版 |
2019/11/01(金) 10:42:33.99ID:???
初心者的な事聞いていいっすか?

テーブルに時間として格納された整数値を現時刻と加算したいんだけどどうするの?

定数としては+ n hourで出来たけど、項目だとできなくて
0754NAME IS NULL
垢版 |
2019/11/01(金) 14:29:13.51ID:???
>>753
手元に環境ないから試してないけど
select CURRENT_TIME + make_interval(hours := xxx)
ではどうかな
0755NAME IS NULL
垢版 |
2019/11/28(木) 15:54:59.03ID:s00g5Y0p
>>753
時刻を数値で扱っている時点で初心者ではない。
0756NAME IS NULL
垢版 |
2019/11/28(木) 17:45:40.87ID:???
UNIX TIMEだろ?
それくらい誰でもするやろ。
0757NAME IS NULL
垢版 |
2020/01/30(木) 22:37:00.56ID:???
象なのか亀なのか
0758NAME IS NULL
垢版 |
2020/01/31(金) 08:26:38.27ID:???

オウム教が象被ってたから、日本ユーザ会が元々postgres95で使ってた亀を使ったという話。
0759NAME IS NULL
垢版 |
2020/01/31(金) 23:19:07.06ID:???
みてる人いて安心した
0760NAME IS NULL
垢版 |
2020/03/27(金) 14:20:54.70ID:vMnC9fl+
ageます
byポスグレ初心者
0761NAME IS NULL
垢版 |
2020/04/09(木) 18:57:31.51ID:yfcWG/vx
CREATE USERとCREATE TABLEとINSERTとUPDATEとSELECTぐらいしか使わない俺が来ましたよ!
ポスグレ触りだして10年以上たってるのに・・・
0762NAME IS NULL
垢版 |
2020/04/09(木) 23:13:35.45ID:???
DELETE使わないって全データ論理削除っすか?
と釣り針にかかってみる。
0763NAME IS NULL
垢版 |
2020/04/10(金) 08:25:35.00ID:???
CREATE DATABASEしないと…
0764NAME IS NULL
垢版 |
2020/04/10(金) 20:03:09.24ID:???
createdb使うから問題ない
0765NAME IS NULL
垢版 |
2020/04/10(金) 20:22:52.38ID:???
dropdb -h all -p all -d all -U all
0766NAME IS NULL
垢版 |
2020/04/16(木) 08:34:16.05ID:???
ALTER 使わないのは凄い
0768NAME IS NULL
垢版 |
2020/04/30(木) 23:41:57.94ID:???
書き込みが無いのは「何も困ることが無い程良いDB」という認識で良いか?
0769NAME IS NULL
垢版 |
2020/05/01(金) 08:43:39.38ID:???
Oracleを仕方なく仕事で使い始めたが、PostgreSQLと比べてOracleのダメさが
使えば使うほど感じるようになり、このスレには何も書けない状態。
0771NAME IS NULL
垢版 |
2020/05/01(金) 09:07:29.45ID:???
Oracleはドライバーの更新が遅すぎて世の中の流れに全くついていけてないからなあ
0772NAME IS NULL
垢版 |
2020/05/01(金) 09:38:01.70ID:???
高い金出せば楽できるDBMSならわかるけどOracleは金も手間もかかるからな
ライセンスのマージンが美味しいと思ってるアホなSI以外は使う理由がない
0773NAME IS NULL
垢版 |
2020/05/01(金) 09:39:53.93ID:???
なのになんで大規模なとこOracle使うんでしょうね
0774NAME IS NULL
垢版 |
2020/05/01(金) 09:50:50.45ID:???
>>773
いつの時代の話だよw
大規模ほどOracleなんて使わない
0775NAME IS NULL
垢版 |
2020/05/01(金) 12:20:34.18ID:???
>>772
>>Oracleは金も手間もかかるからな

MySQLやPostgreSQLへOracleから移行する例が少ないね
何でだろう
0776NAME IS NULL
垢版 |
2020/05/01(金) 13:47:36.07ID:???
>>775
「自分が知らない/調べられない== 少ない」と思い込みたいのかな?

ググればいくらでも出てくるし
シェアの変遷を見ればどこに移行してるかなんて明らか
0777NAME IS NULL
垢版 |
2020/05/01(金) 15:22:46.87ID:???
>>776
PostgreSQLへ移行してるって話かね
世界的にはMySQLだけど
0778NAME IS NULL
垢版 |
2020/05/01(金) 15:52:56.29ID:???
マリアちゃんやろ。
0779NAME IS NULL
垢版 |
2020/05/01(金) 15:58:32.57ID:???
Amazon Auroraじゃないか?
0780NAME IS NULL
垢版 |
2020/05/01(金) 20:42:40.68ID:???
結局RACだろ。RACがいらないならOracle使う意味はない。
0781NAME IS NULL
垢版 |
2020/05/22(金) 20:35:02.20ID:wpCETL3Y
ちょいと教えて欲しい。
psqlで
テーブル存在しない状態で
DROP TABLE IF EXISTS aaa;
をやると
NOTICE: table "aaa" does not exist, skipping
と表示されるけど、これを抑制するオプションとか無いかな?(´・ω・`)
0783NAME IS NULL
垢版 |
2020/05/22(金) 22:11:07.19ID:wpCETL3Y
>>782
ありがとう愛してる(´・ω・`)
0784NAME IS NULL
垢版 |
2020/06/03(水) 22:04:55.17ID:???
interval 型の列を分や秒の値にした結果をselect文で得るにはどうすればよいですか。
列1: name text型
列2: term interval型
select name, term, ??? from table1
得たい結果
期間1, 00:32:00, 32
期間2, 02:05:00, 125
0785NAME IS NULL
垢版 |
2020/06/03(水) 22:33:07.02ID:???
EXTRACT(EPOCH FROM INTERVAL term)で秒になる
0786NAME IS NULL
垢版 |
2020/06/04(木) 01:20:56.02ID:???
ありがとうございます!
明日試してみます!
0787NAME IS NULL
垢版 |
2020/08/27(木) 10:19:05.33ID:BWndbaWN
同一サーバ(PC)で、
データベース - スキーマ - テーブル
となっています。
別のデータベースのテーブルを直接参照する事は
できますか?
0789NAME IS NULL
垢版 |
2020/08/27(木) 16:41:53.26ID:BWndbaWN
ありがとうございます。
頑張ってしらべてみます!
0790NAME IS NULL
垢版 |
2020/09/07(月) 16:06:23.68ID:???
PostgreSQLの初心者です。
バージョン11をLinuxディストロに入れました。
サーバーの起動方法がいくつかあることを知りました。
どれが正しいやり方なのか、あるいは異なる意味を持つ起動方法なのか
わかりません。
PostgreSQLをインストールしたときには
pg_ctlcluster 11 main start
という起動方法を指示されました。

PostgreSQL11のドキュメントにしたがってデータベースクラスタなるものを作成したときには、
pg_ctl -D /usr/local/pgsql/data -l <ログファイル> start
という起動方法を指示されました。

Linuxでサービスを管理をする方法として
systemctl start postgresql
service postgresql start
といったものもあります。

これらはそれぞれ違う用途による起動方法でしょうか?
それとも好きな起動方法を選択できるんでしょうか?
pg_ctlclusterがpostgresユーザー権限で操作できることは知っています。
0791NAME IS NULL
垢版 |
2020/09/07(月) 17:27:41.79ID:???
>>790
むしろ、Linuxの初心者でもあるな?
OSも書かんと。CentOS8?
0792790
垢版 |
2020/09/07(月) 18:20:21.39ID:???
>>791
返事くださってありがとうございます。Debian10です。
どの起動方法も可能ですが、
異なる起動方法によって何か挙動が異なるのか迷って
経験のある方に助言をいただきたくて。
0794NAME IS NULL
垢版 |
2020/09/07(月) 20:00:31.66ID:VUeEFudZ
>>792
やみくもにネットの情報を頼りにするより、ちゃんとまとまった古本でも買った方がいい。

何がなんだか自分でもわからなくなるぞ。PostgreSQLの世界はこれが普通というのがないんだから。
0795790
垢版 |
2020/09/07(月) 20:41:28.81ID:???
>>793-794
大変ありがたい助言。参考にさせていただきます。
0796NAME IS NULL
垢版 |
2020/09/07(月) 20:58:30.91ID:???
>>792
Linuxがsystemd系ならsystemctlコマンドを使うべきだと思う。
挙動が違うかどうかは設定による。

そのへんが気になるなら、他人に聞くのではなく、自分で自分のマシンを確認するべき。
man systemd.serviceとかから?

https://qiita.com/JhonnyBravo/items/a28074c20fa9adf02be3
0797790
垢版 |
2020/09/09(水) 16:37:03.51ID:???
>>796 ありがとうございます。

その後、さらにいろいろ調べつつ試した結果、
PostgreSQLには同じ操作をするのにいくつかの異なる方法(ラッパー)が用意されていて
複雑であることが分かりました。

Linuxディストリビューションのパッケージを利用した場合、
そのディストロの流儀に第一に従うべきかもしれません。

とすると、root権限でもってsystemctlかserviceコマンドでPostgreSQLサーバを起動することになりそうですが、
PostgreSQL11のドキュメントには次のように書かれてありました。
https://www.postgresql.jp/document/11/html/server-start.html
{何を実行するにしても、サーバはPostgreSQLユーザアカウントで起動させなければなりません。
rootであってはいけませんし、他のユーザでもいけません。}
このドキュメントに従う場合、systemctlやserviceは使えなさそうです。

しかしpostgresになってpg_ctlclusterで起動したとき、
Warning: the cluster will not be running as a systemd service. Consider using systemctl
という警告メッセージが表示されるのでsystemctlを使うべきことを示唆しているように思えます。

ちなみに、pg_ctlclusterを使って起動した場合、
systemctl status postgresqlでは停止中と表示されてしまいます。

今のところ分かったのはこんなところです。
何かお気づきの点があったら助言いただけるとありがたいです。
0798790
垢版 |
2020/09/09(水) 17:20:50.29ID:???
pg_ctlclusterを使って起動した場合systemctlには反映されず、
systemctlを使って起動した場合pg_ctlclusterに反映されます。
0799NAME IS NULL
垢版 |
2020/09/09(水) 18:30:21.78ID:???
>>797
ためしにrootでsystemctl startしてから、起動されたプロセスのユーザーをpsでちゃんと確認してみろ。
rootで実行したからって、プロセスがrootとは限らん。
サービスの多くは専用ユーザーを割り当てるのがあたりまえ。ドキュメントにあるのはその念押しみたいなもん。

詳しくは、マシンにたぶんあるサービスのユニットファイル(サービス名.service?)を探して読め。
なかったら、init.dの起動スクリプトかな?
どうやって起動するかが書いてあるから。ユーザーとかオプションとか。
0800790
垢版 |
2020/09/09(水) 18:48:03.12ID:???
>>799
おっしゃるとおりでした。ps axuで調べたらUSERがpostgresでした。
0801NAME IS NULL
垢版 |
2020/09/09(水) 19:01:08.97ID:VZtlwKPH
ポスグレはOSと密接だからrootユーザーが基本。

SQL Serverは管理者権限のあるローカルユーザー

Oracle DatabaseはOracle Database専用ユーザーを作って使用する
0803NAME IS NULL
垢版 |
2020/09/09(水) 22:26:31.64ID:YAfXARE7
自分の知っている世界だけでものをいうやつは必ずいる。

必ずこうと言っているわけではないので、その人の主観ではおかしいことになるのは理解できる。
0804NAME IS NULL
垢版 |
2020/09/09(水) 22:29:22.49ID:YAfXARE7
ポスグレに関してはrootユーザー以外なら、ポスグレ専用ユーザーを作って使う。ポスグレがOSSだと知っていれば、いろんな権限がないと不都合なので、自身があれば自由にしてくれ。
0805NAME IS NULL
垢版 |
2020/09/10(木) 09:41:30.72ID:???
基本postgresで起動してます。
0806NAME IS NULL
垢版 |
2020/09/10(木) 10:54:47.51ID:???
まあ、ユーザーをそんなに意識することはないけどな。
サービスが起動されるときに自動的に使用されるもんだし、ログインして使うもんではないし。
0807NAME IS NULL
垢版 |
2020/09/10(木) 13:55:02.68ID:OD4PsCxP
>>806
はあ?
0808NAME IS NULL
垢版 |
2020/09/10(木) 13:56:08.44ID:OD4PsCxP
どのOSユーザーで動いているのか意識しないなんてありえないだろ
0809NAME IS NULL
垢版 |
2020/09/10(木) 15:16:28.78ID:???
いちいち意識なんかしねえわ。
最初にきっちり設定しとけよ。
0810NAME IS NULL
垢版 |
2020/09/10(木) 16:10:55.82ID:wACcj8kK
はあ?
0811NAME IS NULL
垢版 |
2020/09/10(木) 17:39:36.71ID:wACcj8kK
>>809 みたいなのがいるから、rootユーザーを使うことになったりする。
0813NAME IS NULL
垢版 |
2020/09/10(木) 21:58:14.13ID:OD4PsCxP
OSSなのに他人にお膳立てしてもらうが当たり前というのはおかしすぎる。
0814NAME IS NULL
垢版 |
2020/09/11(金) 18:24:10.01ID:???
てかrootでは動かさないでしょ。
0815NAME IS NULL
垢版 |
2020/09/11(金) 21:07:36.13ID:gHndXZTs
それはそれなりの知識があるひと
0816NAME IS NULL
垢版 |
2020/09/13(日) 15:02:23.76ID:???
Webプログラム上にrootという名前とパスワードを書き込んでおくのは常識
0817NAME IS NULL
垢版 |
2020/09/14(月) 00:56:50.02ID:ix9Okpm5
なぜマルチユーザーにしないといけないのかわかってないやつは、結局、何もかもできる便利な管理者ユーザーでやってしまう。
0819NAME IS NULL
垢版 |
2020/09/29(火) 01:09:03.01ID:???
学習していて、継続的アーカイブとポイントインタイムリカバリがよく分からないのですが・・・・
https://www.postgresql.jp/document/12/html/continuous-archiving.html
https://youtu.be/MCgWUyKQ6YM?t=2744
リストア時に消してしまうWAL(動画でいうWAL1~3)は、なぜ消してしまって復元できるのですか?
ドキュメントの方には、
>少なくともバックアップの開始時点まで遡る、連続した一連のアーカイブ済みWALファイルが必要です。
と買いてあるにもかかわらず、WAL1~3が抜けてしまって戻せる理由のが不思議でたまりません
0820NAME IS NULL
垢版 |
2020/09/29(火) 02:07:57.19ID:wMnFSP7q
>>819
それ資料と説明の仕方が悪いと思う。
WAL1〜3はアーカイブ(バックアップ)されているから大丈夫という意味だけど、メトロの女講師の説明がおかしくてわかりにくくなっている。

この講師の説明だとわかっている人間でないとわからないと思う。
0821NAME IS NULL
垢版 |
2020/09/29(火) 16:56:32.04ID:???
勝手にぽすぐれって読んでたんですが、みなさんぽすとぐれすって読んでるんですか?
0822NAME IS NULL
垢版 |
2020/09/29(火) 17:22:07.67ID:???
「ぽすとぐれすきゅーえる」
0824NAME IS NULL
垢版 |
2020/09/30(水) 00:42:01.27ID:w9Daxpvz
>>820
アーカイブされたWALはどこかにあるのが前提なんですね
ありがとうございます
0825NAME IS NULL
垢版 |
2020/10/01(木) 02:02:26.43ID:WR+ww7MA
>>821
ポスグレと呼ぶのは日本の通称

ポストグレスは英語圏の通称

ポストグレエスキューエルは、最近では無難な言い方。

ポストグレスキューエルは英語圏のださいオナニー表現で、あまり言われない。

技術者同士ならポスグレ、外国人がいる場合はポストグレス、一般人がいる場合はポストグレエスキューエル。

もともとはPostgresが製品名だから、グローバルではポストグレス。
0826NAME IS NULL
垢版 |
2020/10/01(木) 02:05:54.15ID:WR+ww7MA
>>824
アーカイブファイルに同じ番号をつけて説明しているから、あの動画はわかりにくい。

あの動画のメトロの女の知識があやしい。本当に理解してないのに台本を読んでいるから、あんな体たらくになっている。
0827NAME IS NULL
垢版 |
2020/10/01(木) 08:54:10.41ID:???
>>825
ポスグレって読んでたのが自分だけかと思ったのですが、日本の通称ならまあ間違いではなかったということですね
それなら今後もポスグレでいきます
0828NAME IS NULL
垢版 |
2020/10/01(木) 10:58:47.09ID:???
ポスト+イングレスが語源なんだから、やっぱポストグレスがかっこいいでしょ!
0829NAME IS NULL
垢版 |
2020/10/01(木) 11:47:46.04ID:???
英語ではpost-gresで2音節だけど
日本語でポストグレスというと6音節と長く
さらに「ト → グ」が発音しにくいので
ポスグレという呼びやすい略称が定着
0830NAME IS NULL
垢版 |
2020/10/01(木) 14:45:35.94ID:???
フルマネージドで外部から使えるサービスで、一番安いのってどこですか?
素人管理はやっぱ危ない気がしてきたぜ
0831NAME IS NULL
垢版 |
2020/10/02(金) 02:31:25.84ID:yhrmxStj
0832NAME IS NULL
垢版 |
2020/10/07(水) 00:15:45.67ID:5apiOPUy
>>830
AWSのRDS serverlessはどう?
要件わからんけど運用の手間はほとんどかからないイメージだけど。
0834NAME IS NULL
垢版 |
2020/10/07(水) 01:08:35.95ID:???
インフラもアプリも手間がかからないように開発しないと手詰まりになる
0835NAME IS NULL
垢版 |
2020/10/08(木) 17:51:39.15ID:???
Herokuのが比較的安いんじゃないの?
0836NAME IS NULL
垢版 |
2020/12/15(火) 20:25:47.29ID:???
13.1でレプリケーションできない……
0837NAME IS NULL
垢版 |
2020/12/23(水) 13:19:29.30ID:???
ロジカルレプリケーションで質問
pgadmin上からCREATE PUBLISHは出来たのにCREATE SUBSCRIPTIONがクエリ処理中のまま帰ってこない…これは何故?
wal_levelはパブリッシュ側、サブスク側共にlogicalにしてる
他になんか設定抜けてる?
アクセス設定は
all all 0.0.0.0/0
とかにはしてあるんだけど…
0838NAME IS NULL
垢版 |
2020/12/23(水) 14:56:50.38ID:???
自己解決
というかアクセス設定をmd5からtrustにしないとダメなの?
んー、なんか納得いかないんだけど…
0839NAME IS NULL
垢版 |
2020/12/23(水) 16:05:08.25ID:???
連投で申し訳ない
パブリッシュ、サブスクそれぞれの現在の状態ってどうやれば取れるの?
とあるホストで動いてるパブリッシュの一覧とか
サブスク側のサブスク一覧とか
エラーで止まってるとか、動いてるとかそういうの
0840NAME IS NULL
垢版 |
2020/12/23(水) 23:11:00.97ID:???
pg_stat_replication
pg_stat_subscription
かな。
状態確認するのならまず統計情報ビューを確認。
一覧だけならpsqlのメタコマンドにもあるみたい。
0842NAME IS NULL
垢版 |
2021/02/02(火) 20:47:00.35ID:???
あああああ
どこ見ても関数の引数がNULLだったときの動作が書いてない
なんかNullになるっぽいことが質問サイトとかかいてあるが
確実なことがなんもわからん

ただのTO_CHAR
公式ドキュメントから
SQL標準
はてはOracleまで似た情報内科みたのに

めちゃくちゃよく起こることじゃん
なんで?どうなってんのこれ?!
0843NAME IS NULL
垢版 |
2021/02/02(火) 21:57:46.85ID:???
SQL標準じゃなかったなんだこれ
有料って
0844NAME IS NULL
垢版 |
2021/02/03(水) 07:40:50.28ID:???
>>842
元々Oracle使ってた?
Oracleのnullの扱いが特殊で、nullに甘いと言うか…
気をつけた方がいいよ
特に文字列項目はnull非許容にした方が良い
0845NAME IS NULL
垢版 |
2021/02/09(火) 16:21:00.20
PGMiner 対策セキュリティとして、信頼できないユーザから pg_execute_server_program 特権を剥奪する手順を教えてください
0846NAME IS NULL
垢版 |
2021/02/17(水) 12:01:52.89ID:Cviyj/uB
PGMinerって初耳でした。難しいことやっているんですね。
でもそもそも信頼できないユーザからは実行出来なければいいんじゃないですかね?
とはいってもそんなことは百も承知だとは思うので、もしよかったらなんでユーザ制御のみではいけないのか教えてもらえませんか?
どういうシステムか興味があるので。
0847NAME IS NULL
垢版 |
2021/02/26(金) 00:22:50.28ID:???
pg_execute_server_programって明示的に与えない限り付与されないんだから、
管理者権限の管理と監査しかないんじゃないの。
0848NAME IS NULL
垢版 |
2021/03/30(火) 20:11:49.15ID:???
>>841です
色んな状態をPgAdminのクエリから取得出来るのは分かったけどロジカルレプリケーション自体を管理するソフトみたいなのはないのね…
ロジカルレプリケーション管理ソフトのオススメあったら教えて
出来ればGUIでグラフィカルにこのマシンのこのDBをPUBLICATIONに設定
別のマシンのこのDBをドラッグ&ドロップでSUBSCRIPTIONに設定みたいなソフトあると嬉しい
無いなら管理ソフト作るつもりだけど…面倒なので既にあるならそっち使いたい…
0849NAME IS NULL
垢版 |
2021/04/17(土) 07:20:29.92ID:???
JDBCがExceptionでもエラーログ吐かないとかあたまおかしくないですか
0850NAME IS NULL
垢版 |
2021/04/19(月) 23:40:19.66ID:???
JDBCドライバがログ吐くの、それめっちゃウザいのでは…
それくらいアプリ側で捕捉して、アプリ側が思うようにログ吐こうぜ
0852NAME IS NULL
垢版 |
2021/04/23(金) 10:12:55.83ID:???
Windows10でグループポリシーのスタート/シャットダウンスクリプトで他PCにSQLコマンド送信しようとすると止まってしまうけやり方が悪いんかな
0853NAME IS NULL
垢版 |
2021/04/24(土) 13:43:32.69ID:???
>>851
NetCOBOLでプログラムソース引き継ぎリコンパイルか
大変だな
0854NAME IS NULL
垢版 |
2021/04/27(火) 23:48:06.73ID:???
Windowsでログを日本語にしている場合、基本Shift-JISだけどたまにUTF-8で書かれて文字化けするのどうすばなおるの?
例えばこれはUTF-8で書かれてしまう "自動VACUUM: 孤立した一時テーブル"postgres.pg_temp_3.fetchchunks"を削除します"
0855NAME IS NULL
垢版 |
2021/04/28(水) 15:09:49.51ID:???
shift-jisでログを吐くように設定すれば良いのは?
0856NAME IS NULL
垢版 |
2021/04/29(木) 00:13:03.06ID:???
japanese_japan.932に設定しててほとんどはそれで書き込まれるけどごく一部だけ文字化けしてる。試しにUTF-8で開いたらその文字化けしてた行だけは読めた
0857NAME IS NULL
垢版 |
2021/05/02(日) 19:46:23.65ID:wsYqUZcK
いまどきSJISにこだわる方がめずらしい
0858NAME IS NULL
垢版 |
2021/05/25(火) 22:01:00.99ID:RGVH5/nc
pgAdmin3ってPosgreのバージョンいくつまで対応してるの?
pgAdmin4はブラウザアプリになっちゃって使い悪すぎる・・・
0859NAME IS NULL
垢版 |
2021/05/26(水) 12:21:57.19ID:???
>>858
4が9.2からだから、その前までじゃね?
あと、PostgreSQLね
0860NAME IS NULL
垢版 |
2021/05/28(金) 01:23:41.94ID:???
PostgreSQL 13のCOPYコマンドでCSVファイルをテーブルへインポートするとき、
CSVファイルの一行あたりの値の数とテーブルの列数が同じときは
テーブルの列名を指定しないでもインポートできるじゃないですが

これなんですが、CSVファイルは1行にデータが500個あって、テーブルが501列ある、なんて場合、
列名を指定しないと「missing data for column 〇〇」なんて出てしまいますが、エラーを出させず、
テーブルの先頭500列にだけ値を入れたいって場合って、
やっぱりCOPYするときに列名を指定しないとダメですかね

同じようなことをしたいテーブルが沢山あるのですが、列数が200とか300とかそんなのばかりで
どうにか手間をかけずにできないか方法探してます
0861NAME IS NULL
垢版 |
2021/05/28(金) 10:12:09.01ID:???
COPYコマンドだけで対処する方法はないんじゃないか?

csvkitみたいの使ってCOPY FROM PROGRAMするか
カラム指定付きのCOPYコマンドを生成する簡単なスクリプトを書くかかな
0862NAME IS NULL
垢版 |
2021/05/28(金) 15:35:39.72ID:+xuXkEOK
csvの全ての行の最後にカンマ入れればいいんじゃない?
0863NAME IS NULL
垢版 |
2021/05/29(土) 13:46:07.10ID:???
回答どうもです

>>861
そうですか…
COPYコマンド作成スクリプト、かなぁ

>>862
たしかにそれもよさそうですね


やり方考えてみます
0864NAME IS NULL
垢版 |
2021/06/09(水) 17:17:07.70ID:AdD21f7d
Pgadmin4 で外部プログラムを呼び出したり
プラグインを追加したりってどうやったらできますでしょうか。
0865NAME IS NULL
垢版 |
2021/06/12(土) 17:46:40.22ID:???
すいません。教えてください。

Win10にPostgresqlを何度かインストールしているのですが、psqlに”そのパスワードしらね”って言われてしまいます。

此方を参考にしてみたんですが、pgpass.confが見つかりませんでした。
他に何かインストール時に気を付ける事は有りますか??
0866865
垢版 |
2021/06/12(土) 19:38:34.99ID:???
解決しました。どうもすいません。
0868NAME IS NULL
垢版 |
2021/06/20(日) 17:27:25.64ID:SzsdKFeb
PostgreSQL 10 で判らないことあるんだけど、教えてクレメンス・・・m(_ _)m

バージョン10.16(Ubuntu18.04 LTSの aptコマンドで入れられる最新?)でDBの操作は全部phppgadmin入れてブラウザからやってる.
で、phppgadminで「SQL」ってリンクがあってそれを使ってSQL実行するとエラーになる。
phppgadmin使うのが悪いのか、phppgadminで書いてるSQLが悪いのか、ほかに理由があるのか、素人なのでわからんのです。

tagIndexっていうテーブルを作って、booleanでoutputflag ってのを定義しておいて、
UPDATE public."tagIndex" SET outputflag='f
で「tagIndexっていうテーブルがない」(relation "public.tagIndex" dose not exist)って怒られる。

C#のNpgSQLつかってupdate文でそのテーブルの更新はできてる。
phppgadminで中身弄ろうとしてうまくいかない。
エラーになってるSQLが、SET句でエラーになるなら 'f' じゃなくて false と書けばいいんじゃね?とか想像つくけどテーブルが無いといわれるとお手上げっす・・・orz
0869NAME IS NULL
垢版 |
2021/06/20(日) 17:51:48.33ID:???
自己解決。
update "public"."tagIndex" SET outputflag=true;
で行けた。
public."テーブル名” と "public"."テーブル名" っていう、スキーマも "" でくくってるかどうかの違いだけ・・・?
83.とか9.2の頃はこんなことやらなくてもよかったような覚えがあるから「面倒になったなー」ってのが正直な感想でした・・・
0870NAME IS NULL
垢版 |
2021/06/21(月) 08:26:27.75ID:???
> UPDATE public."tagIndex" SET outputflag='f';
PostgreSQL 11.10でも別にエラーにならないみたいよ
ttps://extendsclass.com/postgresql/4f05be9
0871NAME IS NULL
垢版 |
2021/07/29(木) 19:18:55.63ID:???
PostgreSQLでのテーブルの列数の上限は1,600列までですが、
私のデータでは5,000列のテーブルが必要です。
先ほどCREATE TABLEをしようとしたらエラーが出ました。
列数が3列のときは正常にテーブルが作成できます。

多分、1,000列ずつに分割して、あとで結合するのだと思いますが、
その参考となるサイトをご存じないでしょうか?
検索してもまったく見つかりません。
0873NAME IS NULL
垢版 |
2021/07/29(木) 20:21:10.97ID:???
>>871
共通のPrimary Key + 他の列で分割すればいいだけ

まあ5,000列はRDBで扱うのに適さないから
リファクタリングするか目的に適した別の仕組みを使ったほうがいいぞ
0874NAME IS NULL
垢版 |
2021/07/29(木) 22:51:58.63ID:???
>>872
ありがとうございます。
そのサイトは質問前に読んでいましたが、具体的にイメージできなかったです。

一人目の回答者の勧めるソースコードの変更は、
不具合が出るリスクがある上に、会社の他の人たちにも使ってもらうので難しいです。

二人目の回答者は、複数のテーブルに保存し、Viewを使ってデータを提供する方法を勧めているようです。
ただ、Viewもテーブルと同様の列数の制限がある、と書いてあるので
「結局、できるの?できないの?どっちなの?」という感じです・・・。
ちなみに、ユーザーはGUIで操作するだけで、クエリーはそれに基づいてプログラム内で生成するので、
ややこしいクエリーになっても対応できます。

三人目の回答者は、
1. 1,600列無くてもいいように再設計する
→できるならそうしたいですが、方法が分かりません

2. 超過した列にはJSON/JSONBフィールドを使う
→JSONは分かりますが、どんな技なのか分かりません

3. スプレッドシートのようなテーブルにする
→これは、spreadsheet_tableが親でspreadsheet_cellが子みたいになっていて、
spreadsheet_cell一つにつき一つのデータが入るようになっていますか?
(行、列)を(1, 1), (1, 2), (1, 3), …と変えていくことでセルの位置を指定できるみたいですね。
ただ、検索などは非常に遅そうですね…。
0875NAME IS NULL
垢版 |
2021/07/29(木) 23:11:16.18ID:???
>>873
ありがとうございます。

> 共通のPrimary Key + 他の列で分割すればいいだけ

具体的にはどうなりますか?
私の場合を説明しますと、
データ列が始まるまでに5列ほど属性がありまして
そのうちの最初の2列がPrimary Keyです。

一枚岩だとこんな感じです:

Lot (PK), Number (PK), X, Y, Z, Data0001, Data0002, ... Data5000

これを
Lot (PK), Number (PK), X, Y, Z, Data0001, Data0002, ... Data5000
Lot (PK), Number (PK), X, Y, Z, Data1001, Data1002, ... Data2000
Lot (PK), Number (PK), X, Y, Z, Data2001, Data2002, ... Data3000
Lot (PK), Number (PK), X, Y, Z, Data3001, Data3002, ... Data4000
Lot (PK), Number (PK), X, Y, Z, Data4001, Data4002, ... Data5000
…に分ける感じですか?

ただ、これだとX, Y, Zが無駄に被るので正規化して
Lot (PK), Number (PK), X, Y, Z
だけのテーブルを作り、
Lot (PK), Number (PK), Data0001, Data0002, ... Data5000
Lot (PK), Number (PK), Data1001, Data1002, ... Data2000
Lot (PK), Number (PK), Data2001, Data2002, ... Data3000
Lot (PK), Number (PK), Data3001, Data3002, ... Data4000
Lot (PK), Number (PK), Data4001, Data4002, ... Data5000
…にする感じでしょうか?
0876NAME IS NULL
垢版 |
2021/07/30(金) 05:02:43.72ID:???
>>875
それよほど特殊な事情がない限りRDB的には列持ちじゃなく行持ちにするケースだと思う

親テーブル: Lot (PK), Number (PK), X, Y, Z
子テーブル: Lot (PK), Number (PK), Data_No (PK), Data

この形だと親テーブルのレコード1件に対し子テーブルのレコードが5000件

特殊事情があるなら
そういう同じ種類のデータの繰り返しはArray Type使う
https://www.postgresql.org/docs/13/arrays.html
0877NAME IS NULL
垢版 |
2021/07/30(金) 09:29:15.13ID:???
>>871
これは余計なお世話だけど、どの設計がよいかを単体で検証すると思うんだが、
将来的にデータ量や参照量や更新量が増えた場合の速度低下(レスポンス)や、
データ構造(列数とかデータ型)が変わったときの保守に要する時間(ダウンタイム)も考慮して
比較したほうがいいぞ。大量の実データがなくてもダミーデータを生成して。
0879NAME IS NULL
垢版 |
2021/07/30(金) 13:20:59.93ID:???
>>877
>将来的にデータ量や参照量や更新量が増えた場合

そういう用途だとは思えないけどな
0880NAME IS NULL
垢版 |
2021/07/30(金) 15:12:00.47ID:???
>>876
ありがとうございます。

>親テーブル: Lot (PK), Number (PK), X, Y, Z
>子テーブル: Lot (PK), Number (PK), Data_No (PK), Data
>
>この形だと親テーブルのレコード1件に対し子テーブルのレコードが5000件

はい、エラーが回避できるならその形式でもいいです。
ただ、行も10万件/1製品ぐらいあります。
この場合、1製品分の全データだと

親テーブルのレコードが100,000件
子テーブルのレコードが5,000件*100,000件=500,000,000件 (5億件)

…になります。
しかも、こういうデータが数十製品あります。
これは特殊な事情に該当しますでしょうか?

ちなみに、データ部分は同じ種類のデータの繰り返し(すべてfloat)ではあります。

上記を踏まえますと、Array Typeの方が近道そうでしょうか?
すみません、DBはド素人ですので…。
0881NAME IS NULL
垢版 |
2021/07/30(金) 15:25:46.09ID:???
>>877
ありがとうございます。

仰る通り、実行速度や保守性も考慮したいです。
5,000列というのは平均値で、増える傾向にありますが、今後も10,000列は超えないと予想されています。

データ自体は一度読み込んだら更新は必要ありませんが、計算結果はDBに残したいです。
新規製品のテーブル追加は大量に発生します。

大量の実データは既にあります。
0882NAME IS NULL
垢版 |
2021/07/30(金) 15:38:23.12ID:???
>>878
きっと、私の実力的に無理という話ですよね。
DBはド素人で、このデータ量でどのぐらいの速度で動作するのか不明なので、
まずは動作するものを実装したいです。
0883NAME IS NULL
垢版 |
2021/07/30(金) 15:47:22.90ID:???
>>879
そういう用途に該当するかどうか、軽く説明しておきます。

1製品のデータ量は
100,000行
10,000列
が上限とします。
しかし、そんなデータが数十製品×数十ロットあります。

参照量はユーザー数が増えると増えますが、
ユーザー数は多くて300人程度、
同時に使用するのは多くて10〜20人程度と考えます。

(計算結果をDBに残さずに、Excel形式で残す方式であれば)
更新量をゼロにできます。
0884NAME IS NULL
垢版 |
2021/07/30(金) 15:57:18.46ID:???
それだけの規模は、まったくの初心者がやるもんでもなさそうな。
失敗上等な状況ならええけど。

ほかに頼んだほうがええんちゃうかなー。。。
0885NAME IS NULL
垢版 |
2021/07/30(金) 15:59:22.09ID:???
>>880
どういう構造にするのがいいかはデータ量やデータ型以外にそのデータをどう利用するのかに強く依存してる

特殊事情ってのは行持ちだとどうしても困る、求められる要件を実現できないという事情

その判断自体が難しいようなら
性能面の検証も含めてDB設計してくれるところに依頼するか
自分で色んなやり方を試して検証してみるかになるよ
0886NAME IS NULL
垢版 |
2021/07/30(金) 16:38:12.93ID:???
読み取り専用で特定のデータ列だけ欲しいとか
特定のデータ列がある範囲にあるものが欲しいとかそういうクエリがなくて
データ列は常に全部一括で取得して計算処理する前提なら列持ち(横持ち)を軸に考えてもいいと思うよ

その場合は自分ならまずArrayを試す
(RDB前提でかつPostgres前提の場合に限るけど)
0887NAME IS NULL
垢版 |
2021/07/30(金) 16:40:06.84ID:???
時系列の生の実測データだとは思ってたけど
それ300人で使うってなんかすごいね

サマったデータだけ使えればいいような気がするんだけど
300人が違う角度で生データから統計処理とかしたい感じなのかな?
0888NAME IS NULL
垢版 |
2021/07/30(金) 16:40:26.34ID:???
>>884-885
お二人ともありがとうございます。

そうですね、まったくの初心者にしては規模が大きいですよね。

お陰様で、いくつか選択肢が見えてきたので、まずは自分で試してみます。
Array Typeが条件(同じ種類のデータの繰り返し)に合ってそうなので、まずはそれを実装してみます。
行持ちも出来るならやってみて実行速度などを比較できるといいですね。
0889NAME IS NULL
垢版 |
2021/07/30(金) 16:47:46.33ID:???
>>886
ありがとうございます。

はい、全部一括で計算処理する前提です。
すみません、列持ち(横持ち)というのは、私が>>875で書いた、

Lot (PK), Number (PK), X, Y, Z
だけのテーブルを作り、
Lot (PK), Number (PK), Data0001, Data0002, ... Data5000
Lot (PK), Number (PK), Data1001, Data1002, ... Data2000
Lot (PK), Number (PK), Data2001, Data2002, ... Data3000
Lot (PK), Number (PK), Data3001, Data3002, ... Data4000
Lot (PK), Number (PK), Data4001, Data4002, ... Data5000

…のような感じでしょうか?

Arrayが良さそうなんですね。
環境は RDB かつ Postgres ですのでOKです。
では、やはりまずはArrayから試してみます。
0890NAME IS NULL
垢版 |
2021/07/30(金) 16:52:57.74ID:???
>>887
はい、その通りです。
基本の統計情報は全部一括ですが、
測定項目同士の相関などは各人が個別に見る感じです。
0891NAME IS NULL
垢版 |
2021/07/30(金) 18:24:46.83ID:???
Lot,Number毎に扱うのであれば、
Lot (PK), Number (PK), X, Y, Z, data
ってテーブルにして、データをJSONとか扱いやすいテキストにしてdataカラムにぶちこんでおくってのも楽かもよ
0892NAME IS NULL
垢版 |
2021/07/30(金) 19:10:18.41ID:???
列の変更があったらALTER TABLEなん?
死にそう。w
0893NAME IS NULL
垢版 |
2021/08/04(水) 10:33:52.80ID:wV6VxXcY
1つのテーブルがそんなに大きいなんて、やりたいことは単純かもしれないけど、運用は上級じゃない?
300人もいるなら他に誰か適任者いないの? 悲惨な未来しか見えない。。
そもそも新人だって言うなら、クリティカルな業務ではないのだろうけど。
0894NAME IS NULL
垢版 |
2021/08/04(水) 11:59:15.12ID:???
システムのユーザーから適任者を探すなよw
0895NAME IS NULL
垢版 |
2021/08/25(水) 11:23:43.02ID:???
Azureでデータベース間通信するには
Azureサービスに対してアクセス全開放しないとできないと言われとても困ってる
Awsも同じなんだろうか
同じデータベースに違うソースのまぜるってやりたくないな
0896NAME IS NULL
垢版 |
2021/09/07(火) 02:58:44.49ID:???
PG-Stromって実際お幾ら万円なんですか?
何万円なのか、何十万円なのか、何百万円なのか、オーダーだけでも知りたい
0898NAME IS NULL
垢版 |
2021/12/14(火) 12:56:49.87ID:???
pdadmin自体は関係ないけど
server modeで使っててweb serverでlog4j使ってるなら対策必要
0899NAME IS NULL
垢版 |
2021/12/15(水) 13:08:50.65ID:???
>>897
PostgreSQL無関係
基本的にJavaのセキュリティホール
0901NAME IS NULL
垢版 |
2021/12/19(日) 20:47:52.52ID:???
ワイ、ブラウザ(chrome)使ってpgadminいじってるって事は、Apache使ってるんじゃ?とか思ったんだが、そーでもないのか。
0902NAME IS NULL
垢版 |
2021/12/19(日) 20:54:33.27ID:???
使ってる可能性はあるね
0903NAME IS NULL
垢版 |
2021/12/20(月) 19:50:36.09ID:uLvX1nGX
pgAdminそのものの内部はWebブラウザだけどな。
0905NAME IS NULL
垢版 |
2022/02/13(日) 20:18:49.90ID:dbvh1W1h
初心者です。
hinemos の環境移行をしようと、DBのdump で過去Data移行できないか試しています。

DB のdump は下記コマンドで吸い出しました。
./pg_dump -h localhost -U hinemos -p 24001 > /tmp/hinemos.sql

リストアコマンドが判りません、そうすれば入りますか?
./psql -h localhost -p 24001 -U hinemos -f /tmp/hinemos.sql

これだと、「ERROR:」がいっぱい出ます。
0906NAME IS NULL
垢版 |
2022/02/15(火) 23:32:04.39ID:???
>これだと、「ERROR:」がいっぱい出ます。
多分既にテーブルがある状態でリストアしようとしてエラーがでていると予想
もしそうなら↓のどっちかで対応できると思う
・dbを空に(一度dropして再度作成)してリストアを実行
・ダンプ時に-cをつける(バージョンによっては--if-existsもつける)
pg_dump -h localhost -U hinemos -p 24001 --if-exists -c > /tmp/hinemos.sql
0907NAME IS NULL
垢版 |
2022/03/16(水) 12:05:05.76ID:???
function内からprocedure呼び出せる?
0909NAME IS NULL
垢版 |
2022/03/16(水) 15:22:19.33ID:???
質問なのですが
インデックスがある一時テーブルにselectかけるとき
ヒント区index scanを指定しても
いくらやっても適用されず
実行計画を見てもbitmap index scanになってしまいます。
どなたかこの問題に心当たりのある方いらっしゃいませんか?
posgre側がこっちの方が早いからと判断してやってるのかかと思ったのですが、bitmapの方が遅いんですよね…
0910NAME IS NULL
垢版 |
2022/03/16(水) 17:00:32.15ID:???
>>909
まずはEXPLAIN ANALYZE <query> でestimated rowsとactual rowsの差を確認
次にANALYZE <table>を実行してからEXPLAIN ANALYZEして差が出るかどうかを確認
0911NAME IS NULL
垢版 |
2022/03/17(木) 19:17:55.47ID:???
>>910
確認してからまた対応が違うってことかな?
もうちょい噛み砕いてけろぉ、おじさんsql詳しくナインだよ
0912NAME IS NULL
垢版 |
2022/03/18(金) 22:39:42.10ID:???
>>911
SQL関係ない。
実行計画を判断する元になる情報が実態とあってるかを確認しろって909は言ってる。
一時テーブルはautovacuum 対象外だからそのセッション内でanalyzeする必要あるはず。
0913NAME IS NULL
垢版 |
2022/04/21(木) 11:19:04.35ID:EBqMDuxt
ロールの権限について学習したいので教えてください
https://www.postgresql.jp/document/13/html/sql-grant.html
データベースオブジェクト間で包含関係にあるものの権限や、デフォルトの権限についてよくわかりません
あるロールにデータベースに権限を与えた場合、中のテーブル等にも権限を与えたことにはなるのですか?
逆に、テーブルのみに権限を与えた場合、データベースのアクセス権限は自動的に与えられるのですか?
0914NAME IS NULL
垢版 |
2022/04/22(金) 01:22:01.50ID:Ie5idS4k
>>913
データベース単位の権限なんてまず使わないと思うぞ。アクセスできるかできないかくらいの制御程度しかできない。

そんな粒度では意味がないし。

テーブル単位の権限付与が面倒だから、特定の権限をまとめたロールを作って、ロールで権限を付与する。
0915sage
垢版 |
2022/05/16(月) 11:30:34.60ID:oLXz7yW/
win10 pro postgresql11について質問させてください。

postgresqlのサービスを止めることなく、w10標準のバックアップツールで\dataをフォルダごとnasにバックアップして問題ないでしょうか?
0916NAME IS NULL
垢版 |
2022/05/16(月) 23:58:56.09ID:???
例えば↓みたいになったとしたら
 バックアップツールがファイルAをコピー
 バックアップツールがファイルBをコピー
 DBがファイルAとCにデータを書き込む
 バックアップツールがファイルCをコピー
コピー先のファイルAはDBがデータを書き込む前の内容で、ファイルCはDBがデータを書き込んだ後の内容になるので困ると思う

25.2. ファイルシステムレベルのバックアップ
https://www.postgresql.jp/document/11/html/backup-file.html
0917NAME IS NULL
垢版 |
2022/05/17(火) 14:58:03.20ID:gyj+zyNH
ありがとうございます。サービスを止めてからバックアップすることにします。
0920NAME IS NULL
垢版 |
2022/05/23(月) 16:08:07.40ID:???
https://www.postgresql.jp/document/11/html/app-pgdump.html
> pg_dumpはPostgreSQLデータベースをバックアップするユーティリティです。 データベースを使用中であっても一貫性のあるバックアップを作成することができます。 pg_dumpは他のユーザによるデータベースへのアクセス(読み書き)をブロックしません。
0921NAME IS NULL
垢版 |
2022/05/28(土) 17:48:41.65ID:???
pg_basebackup使えば稼働中でもデータディレクトリまるごとバックアップできる。
ただし対象サーバーがレプリケーションのマスターとして動作できるように設定しておく必要あり。
0922NAME IS NULL
垢版 |
2022/07/23(土) 09:36:40.59ID:NLDFJYg2
15でpublicに書き込めなくうんたら
0923NAME IS NULL
垢版 |
2022/08/08(月) 14:45:02.64ID:???
教えてください。
ECPGからPostgresqlのストアドを呼び出し、結果をchar型の配列で受け取りたいのですがうまくいかなくて…
そもそも出来るのでしょうか?
0926NAME IS NULL
垢版 |
2022/08/08(月) 15:07:47.54ID:???
>>924
PRO*CのPostgresql版みたいな奴です。
0927NAME IS NULL
垢版 |
2022/08/08(月) 15:12:00.49ID:???
そもそもストアドで配列で値返せるのか?
ファンクションになるんじゃ無いの?
0929NAME IS NULL
垢版 |
2022/08/08(月) 16:12:13.46ID:???
intの配列だとうまくいくんですよね…
0932NAME IS NULL
垢版 |
2022/08/08(月) 18:46:18.87ID:???
text[]有るやろ?
何でcharなん?
0933NAME IS NULL
垢版 |
2022/08/08(月) 19:00:51.58ID:???
Cとの型変換が必要かどうかで違いがあるんじゃないの?
charじゃなく”char”ならOKとか
0934NAME IS NULL
垢版 |
2022/08/08(月) 19:11:53.86ID:???
質問者来なくなったな
textで答え出たからな
0935NAME IS NULL
垢版 |
2022/08/08(月) 21:47:30.56ID:Qb/hdlom
Postgresの文字列型はtext型とみなす仕様が根底にある。

同じ文字データ型でもキャストがうまくいかないのがはまるところ。
0936NAME IS NULL
垢版 |
2022/08/08(月) 23:28:34.06ID:???
>>931
ありがとうございます!
今まで色々やってみてまだ出来ていないです…
明日やってみます!
0937NAME IS NULL
垢版 |
2022/08/08(月) 23:31:07.14ID:???
>>932、933、934、935
ありがとうございます!
明日も色々やってみます。
0938NAME IS NULL
垢版 |
2022/08/09(火) 09:59:56.87ID:???
やっぱりECPGの実行体起動すると以下で落ちちゃいますね…
[malformed array literal: "" on line 53][-400]
0939NAME IS NULL
垢版 |
2022/08/27(土) 18:04:49.07ID:p6dR8Je4
zip版ダウンロードしたら、pgAdmin4のフォルダ名が長すぎて解凍失敗するわ。
こないだまで解凍出来たのに。

インストーラー使ってインストールしたらアンインストール中にエラーになるわ。

255文字制限解除しないと使えないのが普通だっけ?
0940NAME IS NULL
垢版 |
2022/08/27(土) 18:16:43.57ID:???
>>939
プラットフォーム名が書かれていないし、「255文字制限解除」が何か分からないので外すかもしれんが、
インストール先のファイルシステムはサポートされているもの?
仮にWindowsとした場合、FATやFAT32はサポートされていない。

それから、これは未確認だけど、もし新しいZIP64フォーマットが採用されてるなら、対応するアーカイバを使うとか。
パーミッション、あるいは空き容量が不足していて伸長が正しくできない可能性は?
0941NAME IS NULL
垢版 |
2022/09/19(月) 22:35:54.64ID:???
zip解凍できないのはpostgre以前にOSの問題だね。
0942NAME IS NULL
垢版 |
2022/09/19(月) 22:41:45.27ID:???
問題ではなく、仕様やろ。
C:¥ルートにでも展開すりゃええんちゃうの?
0943NAME IS NULL
垢版 |
2022/09/28(水) 23:41:12.68ID:???
少しお聞きしたいのですが
現在社内にある旧商品管理鯖(引退済み)のマシンを引っ張り出してきたのですが
PostgreSQLのVerが7.3.10でした。
この状態からpg_dumpallでデータを取り出すことは出来たのですが、
別のサーバにPostgreSQLのVer12をインストールして、
イカのコマンドを打ったところ、
psql -U postgres -f /backup.db > update.log
画像の様な状態になってどうしたものかと考えております。
エラーでキーが重複してることや、
multiple primary keys for table are not allowedのように
複数の主キーは許可されていませんと出てきているのですが、
これは、SQLのバージョンを一気に上げすぎているからなのでしょうか?
それとも、データベース自体が壊れている可能性があるのでしょうか?
(過去に鯖の半クラッシュが何度かあった模様)
よろしくお願いします。
https://i.imgur.com/daRuFqr.jpg
https://i.imgur.com/pCXROZr.jpg
0944NAME IS NULL
垢版 |
2022/09/29(木) 05:03:21.04ID:???
自分なら、その方法がサポートされているか(バージョン間、手順)を調べて、
サポートされているようならログを見て起こっている問題・原因を把握したうえで対策を考える。
0945NAME IS NULL
垢版 |
2022/09/30(金) 22:50:06.19ID:???
duplicate key value violates unique constraintとかあるようだけど、DBに既にテーブルがあったりしない?
0946NAME IS NULL
垢版 |
2022/12/08(木) 00:04:47.29ID:pHlq3Sz7
初心者ですみません。既存TBLにカラム追加してレングス変わると影響大きいですか?当初TBL設計時にFILLER積んだほうが良いのでしょうか?
0947NAME IS NULL
垢版 |
2022/12/08(木) 02:20:31.77ID:???
仕事で使ってるけど必要になったらカラムどんどん追加してるよ
0948NAME IS NULL
垢版 |
2022/12/09(金) 12:22:34.66ID:???
そんなのプログラムの作りによるんじゃないの
DBに依存しまくってると苦労する
0949NAME IS NULL
垢版 |
2023/01/15(日) 23:52:41.89ID:SdlFKp5i
ブチクシは悩み続けて3年
0950NAME IS NULL
垢版 |
2023/01/19(木) 07:06:46.65ID:???
ちんちん!シュッ!シュッ!シュッ!
0951NAME IS NULL
垢版 |
2023/01/19(木) 22:38:06.23ID:jlE8WkqW
>>946
メインフレームのファイルのようなものじゃなくて、データファイルの内部は頻繁にデータの位置を変えている。

そんな古風な仕組みではない。
0952NAME IS NULL
垢版 |
2023/01/20(金) 13:33:44.34ID:???
カラム情報としてポインタになってるだけだね。適当
0953NAME IS NULL
垢版 |
2023/03/11(土) 05:08:19.44ID:aB1pzwA3
外部キー制約を一時的に変更するにはどうすればいいでしょうか?
通常は、ON UPDATE RESTRICT で、一時的に ON UPDATE CASCADE にしてクエリ実行後に RESTRICT に戻すにはどうすればいいのでしょうか?
ADD CONSTRAINT と DROP CONSTRAINT の方法は分かるのですが・・・
0954NAME IS NULL
垢版 |
2023/03/11(土) 16:56:32.01ID:???
ALTER TABLEのALTER CONSTRAINTではできないのでDROP/ADDする

ALTER TABLE <table_name>
DROP CONSTRAINT <fk_name>,
ADD CONSTRAINT <fk_name> FOREGIN KEY … ON UPDATE CASCADE;
0955NAME IS NULL
垢版 |
2023/04/22(土) 19:34:36.35ID:g9MOSe1r
物理外部キーを作るくらいなら、論理外部キーとしておいた方が楽。

ガチガチにしておいても、エラーハンドリングの実装がなければ意味がない。
0956NAME IS NULL
垢版 |
2023/06/25(日) 23:14:20.40ID:???
update on conflictを使いまくってるとシーケンス値が上がりまくって、primary keyのidの値が飛びまくるんだけど
気にしたら負けかな。
もちろん綺麗に1 2 3とならない事は認識してるけど、1 1235 5493 29849 みたいに膨大な数飛びまくると…。

99%がupdateの場合なんだけど、update returningして件だったらinsertにした方がいいのかな
その場合ロックとか考えなきゃいけないのが大変なんだけど、もう避けられないのかな
0957NAME IS NULL
垢版 |
2023/06/26(月) 18:19:47.60ID:???
insert on conflict do update(いわゆるupsert)のことだよね?
conflictの条件をprimary keyにできないならPKのシーケンスが飛びまくるのはしょうがないと思う
ただ99%がupdateならupdateしてからinsertのほうが性能は良くなるような気がする

ロックを考えなきゃいけないというのはよくわからない
今も同じじゃない?
0958NAME IS NULL
垢版 |
2023/06/26(月) 20:59:21.79ID:???
言いたいのはロックじゃなくてトランザクションじゃないかな
0959NAME IS NULL
垢版 |
2023/06/26(月) 22:46:26.10ID:???
>>957-958
ありがとうございます。
on conflict do updateであれば、トランザクション貼らずともコマンドを実行するだけで確実にinsertかupdateが確定で成功するけど
update → insertだと両方updateが0件になって両方insertしようとして片方がエラー という事が起きるかなと認識していました
0960NAME IS NULL
垢版 |
2023/06/27(火) 01:12:04.51ID:???
update → insert on conflict do updateをトランザクションでくくれば今と同じなんじゃないかな

ただREAD COMMITEDならlost updateが発生してるだろうから
本当にそれが望ましいのかよく考えたほうがいいと思う
0961NAME IS NULL
垢版 |
2023/07/02(日) 05:52:54.79ID:???
insert into 〜 on conflict do updateでシーケンス値が増えるのが我慢できなくて
insert into 〜 on conflict do update相当の処理をトランザクションで書いているのですが
これって最終的にテーブルに対してACCESS exclusiveロック(selectすら妨害する最強ロック)をかける事が必須だったりしますか?

上記のクエリと同じ処理を行いたい場合、以下の処理を行う必要があると思います
・select文で該当の行が既にあるかをチェック
・select文の結果を見て、該当の行があればupdate
・select文の結果を見て、該当の行が無ければinsert

トランザクション1と2が両方同じタイミングでselect文を発行して、どっちもresultが0だった場合、どっちもinsertをしようとしてしまう。
だからどちらか片方のselect文は、他のinsertが終わるまで待ってから行って、result 1を取得する必要がある。

最初は行ロックでいいかな?と思ったのですが、最初にselectをした段階で対象の行は「存在しない」ので行ロックがかけれません。
となると、対象のテーブルに一番強い権限のACCESS exclusiveロックをかける必要がある?と思います。

ですが、それだとdo updateとは無関係のただのselect文に対してもロックがかかってしまいます。
この一連のdo update〜の処理でだけ排他ロックをかけたいのですが、そんな事出来るのでしょうか?
0962NAME IS NULL
垢版 |
2023/07/02(日) 06:05:07.53ID:???
違った。
SHARE UPDATE exclusiveモードを使えばよかったのか
失礼しました
0964962
垢版 |
2023/07/02(日) 22:36:06.35ID:???
同じ話題を引っ張り続けて申し訳ないけど、自分でinsert〜on conflict do update(upsert)相当の事をするのが面倒すぎて、趣味ですら面倒で手が止まる。
仕事じゃ絶対提案出来ないな(ダルすぎて)
自分の場合は実際には1000件単位のデータをupsertしてるんだけど、この数だと1件づつselect→(update or insert)は遅すぎる。
select文で1000件のデータのユニークキーに対して長いwhere 文を作る。
( SELECT id,key FROM tbl WHERE key in ( $1 , $2 , $3 .... , $1000) )

select文の結果を入れたい1000件単位のデータと比較して、1件づつinsertするかupdateするかを判定する
insert、updateも1件づつやるとトランザクションしても遅いから1リクエストで済むように動的にクエリ文を作る。
( INSERT INTO tbl (key) VALUES ($1),($2)... )
( UPDATE tbl SET key=c.key FROM( VALUES ( ($1,$2),($3,$4),...) AS c(id,key) WHERE tbl.id=c.id )

そしてupsertから加えた機能で、含まれてないデータをDELETEもするようにしてるからさらにクエリ文が増える。

SQL文の文字列をプログラムから動的に作るんじゃなくて、
O/Rマッパーというのを使ってもっと構造的に出来るようにするべきなんだろうか…。
ちなみにnode.jsです。
0965NAME IS NULL
垢版 |
2023/07/03(月) 00:19:11.21ID:???
その1000件とかの入力データに同じユニークキーを対象としたデータがあった場合にどうしたいの?
何か累積値や合計値を計算してて必ずカウントアップしていかないといけないとか
入力データ内の順序で後のデータを正として先のデータは捨てられてもいいとか

>>962
>SHARE UPDATE exclusiveモードを使えばよかったのか
これだとテーブルロックになるので1つのトランザクションが終了するまで次のトランザクションは待つことになる
これで十分なユースケースならそもそも同じキーに対して同時にinsertが実行される心配しなくてもいいよね?分離レベルをSerializableにすれば該当キーがロックされるだけで済むはず
0966NAME IS NULL
垢版 |
2023/07/03(月) 03:52:15.72ID:???
ごめんなさい、SQLクエリについてはSHARE UPDATE exclusiveのロックを取得する。で何の問題もありません。

自分が今悩んでいるのは、SQL文が動的になって書くのが大変という事です。
1000件あるデータ以下のような1回のinsert文で全ての値を登録するなどの事をしています。
insert into tbl (key1,key2,key3) values(1,2,3),(4,5,6),(7,8,9);

nodejsの場合、プログラムの中からSQLを実行する時は以下のような書き方をするのですが
query(`insert into tbl(key)values($1)`,[1]);

これが可変になると、以下のような書き方になってものすごく読みにくく感じます。実際はパラメーター複数あってさらに複雑ですし。
query(`insert into tbl(key)values ${insertDatas.map((v,i)=>`($${i+1})`).join(",")}`,insertDatas);
もちろんプログラムとしては全く難しくないのですが、素直に言ってダルい。$が連続しているのも読みにくさが増す理由になってる。

なので、こういう場合はO/Rマッパーというものを使えば
文字列操作ではなく見やすい書き方になったり
1回頑張って作れば他のテーブルに横展開出来るから楽なのかな?という趣旨でした。


言語化するとposgresqlのスレで言う事じゃない気もして、申し訳ない。
0967NAME IS NULL
垢版 |
2023/07/03(月) 18:43:11.96ID:???
ORMじゃなくてもbulk insert用のSQLを生成/フォーマットする機能のあるライブラリを選べばいいよ

>query(`insert into tbl(key)values ${insertDatas.map((v,i)=>`($${i+1})`).join(",")}`,insertDatas);
string interpolationに入れた場合に適切にエスケープしてくれるのかどうかちょっと怪しくない?
0968NAME IS NULL
垢版 |
2023/07/15(土) 18:40:40.77ID:nkjGsW1C
ストアドファンクションでINSERTしたレコードを取得するにはどうすればいいでしょうか?
INSERTは下記のクエリで行っています。
RETURNS VOID になっている所を、RETURNS TABLEにしてレコードを取得したいのですが、具体的なソースコードが思いつきません。
https://ideone.com/5JPpQ4
0969968
垢版 |
2023/07/15(土) 18:49:29.02ID:???
すみません。自己解決しました。
0970NAME IS NULL
垢版 |
2023/07/15(土) 19:15:02.96ID:???
>>968
解決した方法も書いておけよ。そうすることでQ&Aが成り立つし、次に困ったときに返信があることが期待できるようになるんだぞ。
0971NAME IS NULL
垢版 |
2023/07/15(土) 19:58:47.70ID:???
それが人にものを頼む態度か
0972NAME IS NULL
垢版 |
2023/07/15(土) 21:53:57.61ID:???
RETURNINGやろ
それ以外で自決してたら知らん
0973968
垢版 |
2023/07/16(日) 01:02:59.77ID:???
解決した方法は下記です。
RETURNS TABLE - RETURN QUERY です。
https://ideone.com/kgQo96

もっといい方法もあると思いますが、自分では思い付きませんでした。
0974NAME IS NULL
垢版 |
2023/07/16(日) 01:27:08.90ID:n5R9lLii
>>973
変数というものがわからないのか?
0975NAME IS NULL
垢版 |
2023/07/16(日) 01:30:14.06ID:n5R9lLii
初心者はわかっている値を再度、SELECTしたりするよな。
0976NAME IS NULL
垢版 |
2023/07/16(日) 01:31:54.97ID:n5R9lLii
見れば見るほど何がやりたいのかわからない
0977968
垢版 |
2023/07/16(日) 02:03:17.84ID:???
すみません。
どこが悪いのでしょうか。

RETURN QUERY SELECT については、
使用時はプログラムで INSERTINCIDENT() に引数(incident_name, full_text, registered_by) を与えて呼び出し、
プログラムで与えた引数の値と、INSERT された値が一致するかどうかを比較する必要があるので、意図して SELECT しています。
0978NAME IS NULL
垢版 |
2023/07/16(日) 02:13:14.95ID:n5R9lLii
ネタじゃなければ、確認することをくっつけて実行するのは素人だと思ってください。

そもそもincident_nameとfull_textが引数になってないでしょうに。
0979NAME IS NULL
垢版 |
2023/07/16(日) 02:15:13.71ID:n5R9lLii
'件名',
'本文本文本文',

公表しているコードだとリテラル値を使っているだけなので、いきなり脳内情報を書き込まれてもわかりません。
0980968
垢版 |
2023/07/16(日) 02:36:08.88ID:6TXuZh7c
>公表しているコードだとリテラル値を使っているだけなので、いきなり脳内情報を書き込まれてもわかりません。
すみません。引数をつけて書き直しました。
https://ideone.com/6Ufeev

>ネタじゃなければ、確認することをくっつけて実行するのは素人だと思ってください。
この件が、ソースコードのどの部分にあたるのか理解出来ていません。
おかしな理解のまま進みたくないので、教えて頂けないでしょうか。
0981NAME IS NULL
垢版 |
2023/07/18(火) 11:43:11.80ID:nPycmVG4
そのファンクションが必要な理由がわからない
0982NAME IS NULL
垢版 |
2023/07/18(火) 16:17:09.32ID:nPycmVG4
グルグル回ってるな。
INSERTしたレコードの列値がすべてわかっているのに、そのレコードをSELECTするのはPostgreSQLを信用していないということなのか?
0983NAME IS NULL
垢版 |
2023/07/18(火) 21:22:24.46ID:???
idがストアドの中で採番されるからそれを取りたいんだろ。タイムスタンプなんかも。
0984NAME IS NULL
垢版 |
2023/07/18(火) 22:28:47.10ID:DR+/wZzQ
SELECT文のFROM句にINSERTしてSELECTするファンクションを置きたい理由がわからない。

手続きをファンクションとして隠蔽したいんだろう。

idの最大値の求め方も同時実行の考慮なしだし、INSERTが想定通りだったか、自分で確認するらしいし、もはや目的がわからない。
0985NAME IS NULL
垢版 |
2023/07/19(水) 00:12:11.06ID:???
>>984
>idの最大値の求め方も同時実行の考慮なしだし
SERIALIZABLEかもしれないよ
0986NAME IS NULL
垢版 |
2023/07/19(水) 00:17:38.56ID:???
INSERTが想定通りだったかSELECTで確認する
さらにそのSELECTが想定通りだったか・・・・詰み
0987968
垢版 |
2023/07/22(土) 22:26:35.01ID:???
INSERT 時に採番される ID とタイムスタンプを取得したいので、ストアドプロシージャではなくストアドファンクションにしました。
ファンクションではトランザクションが使えないので、 serializable にする事で妥協しました。

全てのクエリが、ファンクションを呼び出すプログラム側 ( Npgsql ) の NpgsqlTransaction を使用するので、
プログラム側で IsolationLevel に Serializable を設定しています。

・ファンクションでトランザクションを使う方法
・ストアドプロシージャで戻り値を戻す方法
のいずれかが分かれば serializable 以外に出来るのですが、どうするべきなのかがよく分かりませんでした。
0988NAME IS NULL
垢版 |
2023/07/22(土) 22:45:38.83ID:rGyCVXUK
ネタ確定だな
0989968
垢版 |
2023/07/23(日) 01:24:32.26ID:???
>>988
ネタじゃなく、知識がない状態で突貫でやらざるを得ない状態になっているのです・・・。
0990NAME IS NULL
垢版 |
2023/07/23(日) 03:11:39.33ID:lgEmBl7h
ストアドプロシージャにはOUTパラメータというものがあるんだよ
0991NAME IS NULL
垢版 |
2023/07/23(日) 17:56:41.43ID:???
Windowsの15.3をインストールしたけどpgadminが動かないね
海外の掲示板では15.2に戻せって言ってるっぽい
原因がPython側にあって修正する時間がないって回答きてるっぽいからしばらくバージョンアップ無理かな

やっぱネイティブじゃないとこんな事になっちゃうね
0992NAME IS NULL
垢版 |
2023/07/23(日) 20:22:58.37ID:lgEmBl7h
どんな製品でも最新バージョンは様子見しておくもんなんだよ
0993NAME IS NULL
垢版 |
2023/07/24(月) 08:55:43.11ID:???
PostgreSQLは最新の15.3をインストール
添付のpgAdmin7.4はインストールしない

別途古いpgAdmin7.3をインストール

これでいけた
0994NAME IS NULL
垢版 |
2023/08/13(日) 03:59:11.08ID:???
Pgadmin4自体のデバッグログを出すにはどうしたら良いのでしょうか?
ググると「DBにxxの拡張を入れて〜」とかあるけど、そうじゃなくてpgadmin4のプログラム自体のログが見たいです。

AWSのrdsにssm経由で繋ごうとして、
psqlコマンドではpgpass.conf ファイルに設定したパスワードも読み込んで何も問題なく接続出来るんだけど、
psql -h localhost -p 57851 -U postgres -d postgres

pgadmin4ではconnection timeout expiredしか表示されなくて何も手がかりがなくて困ってます。

素のpsqlで繋がらないなら、DB側の設定やAWSのセキュリティグループを見るとかやりようはあるのでしょうが、pgadminだけで繋がらない状態です
0996NAME IS NULL
垢版 |
2023/08/13(日) 20:38:16.82ID:???
>>995
ありがとうございます。まさにここでした。

そしてログレベルを上げても接続エラーの詳細なログは出なくて
結局バックエンドのpythonにログを追加してデバッグして
最終的に接続できない理由はlocalhostと書いてあるからで127.0.0.1と書いたら繋がりました。
0999NAME IS NULL
垢版 |
2023/08/14(月) 09:09:12.37ID:???
それではまたどこかでお会いしましょう
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 2658日 17時間 26分 57秒
10021002
垢版 |
Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。

ニューススポーツなんでも実況