X



トップページDB@2ch掲示板
1002コメント293KB
MySQL 総合 Part26 [無断転載禁止]©2ch.net
レス数が1000を超えています。これ以上書き込みはできません。
0098NAME IS NULL垢版2018/02/11(日) 13:38:47.77ID:???
>>96
> バカ向けの戒めを一般論とうそぶく
意味不明。
何が言いたいのか?
0099NAME IS NULL垢版2018/02/11(日) 15:13:31.90ID:UNyAzKgh
>>98
何か裏の意味があるんじゃないかとか気になっちゃってるの?
例えばキミがバカだとか?
まあそれは俺には否定できないけどw
安心しな>>96に書いてある通りだよw
0100NAME IS NULL垢版2018/02/11(日) 17:05:51.69ID:???
なお意味不明。
おまえがバカであることはわかったので、会話終了。
0101NAME IS NULL垢版2018/02/11(日) 17:50:40.33ID:UNyAzKgh
>>100
あらそうおめでとう
また一つ勘違いが増えたねw
0102NAME IS NULL垢版2018/02/14(水) 13:24:20.43ID:???
☆ 日本の、改憲をしましょう。現在、衆議員と参議院の両院で、
改憲議員が3分の2を超えております。『憲法改正国民投票法』、
でググってみてください。国会の発議はすでに可能です。
平和は勝ち取るものです。お願い致します。☆☆
0103NAME IS NULL垢版2018/04/04(水) 13:25:37.90ID:???
MysqlがすぐおちるのですがMariaDBにすれば改善されるのでしょうか?

よく出るエラーメッセージはこんなやつです。
mysqli_set_charset(): Error executing query in DBのURL

MariaDBはMysqlに比べてどのぐらい優れているのかもわからないので教えていただければ幸いです。
0104NAME IS NULL垢版2018/04/04(水) 13:26:46.04ID:???
MysqlがすぐおちるのですがMariaDBにすれば改善されるのでしょうか?

よく出るエラーメッセージはこんなやつです。
mysqli_set_charset(): Error executing query in DBのURL

MariaDBはMysqlに比べてどのぐらい優れているのかもわからないので教えていただければ幸いです。
0105NAME IS NULL垢版2018/04/04(水) 16:19:47.28ID:???
黙ってプログラミングやめろ
0106NAME IS NULL垢版2018/04/04(水) 21:28:12.87ID:jrbAzYZz
>>104
設定がおかしいからだと
どういう設定しているか詳細を晒してみると良いかも
0107NAME IS NULL垢版2018/04/05(木) 01:41:41.55ID:l3AE4+ue
エラーが出るから他のRDBMSに乗り換えるという発想が大胆!
0108NAME IS NULL垢版2018/04/23(月) 22:23:31.79ID:nKpwF7rJ
8.0は性能二倍だって
MariaDBいらなくね?

MySQL 8.0正式版がリリース。性能が最大で2倍、JSONデータや地理情報などサポート。ロールによるユーザー権限の管理も可能に
http://www.publickey1.jp/blog/18/mysql_802json.html
0109NAME IS NULL垢版2018/04/24(火) 05:12:07.24ID:???
>ロールによるユーザー権限の管理も可能に

これが出来るようになるのか。
0111NAME IS NULL垢版2018/05/10(木) 12:03:19.38ID:???
mysql8とmariadb
どんどん差が開くな
0112NAME IS NULL垢版2018/05/10(木) 19:51:31.54ID:???
MySQLは、コミュニティ版でもスレッドプールが使えるようになった?
0113NAME IS NULL垢版2018/05/12(土) 07:22:25.90ID:???
共同ツール 1
https://seleck.cc/685

https://trello.com/
ボードのメニュー → Power-Upsから拡張可能 Slack DropBoxなど
Trello Chrome拡張機能 elegant
ttp://www.kikakulabo.com/service-eft/
trelloのオープンソースあり

共同ツール 2
https://www.google.com/intl/ja_jp/sheets/about/

共同ツール 3
https://slack.com/intl/ja-jp
https://www.dropbox.com/ja/
https://bitbucket.org/
https://ja.atlassian.com/software/sourcetree
https://sketchapp.com/extensions/plugins/
ttp://photoshopvip.net/103903

ttps://goodpatch.com/blog/sketch-plugins/
0114NAME IS NULL垢版2018/05/12(土) 21:49:10.91ID:???
チューニングって、どのくらいやってる?
0115NAME IS NULL垢版2018/05/16(水) 15:27:03.17ID:ol9m4woT
varcharの文字列の途中にタブコード(\t : 0x09)を入れたいのですけど、
例えば、'aaa\tbbb'というふうにタブコードを入れて、
読みだしてみたら、'aaa bbb'というふうにタブコードが2つの半角スペースに
置き換わっているような気がします。
タブコードを文字列の間に入れられないんでしょうか?

ちなみにタブコードで区切られたvarcharっをキーにして
利用するつもりです。
0116NAME IS NULL垢版2018/05/16(水) 19:42:47.03ID:ol9m4woT
自己レスです。
文字列のなかにタブコードがあっても
全く同じように、普通に処理できました。
お騒がせしました。
0117NAME IS NULL垢版2018/05/18(金) 06:05:59.48ID:???
https://dev.mysql.com/doc/refman/5.6/en/mysqldump.html
https://dev.mysql.com/doc/refman/5.6/ja/mysqldump.html
MySQLの公式リファレンスは一部和訳されてるけど、この和訳って正しいの?

例えば
The mysqldump client utility performs logical backups,

mysqldump クライアントは、論理バックアップ を実行するユーティリティーで、

こういう翻訳になるのはisが入っているときだけだよね?
0118NAME IS NULL垢版2018/05/18(金) 08:19:37.74ID:???
>>117
そういう機械翻訳じみた発想は捨てろ
一般動詞だから絶対こうなるとかないから
0119NAME IS NULL垢版2018/05/18(金) 08:34:58.35ID:???
そんなにおかしい和訳だとは思わないが。
0121NAME IS NULL垢版2018/05/18(金) 18:17:27.24ID:???
>>117
信用できないなら原文だけ読んでたほうが幸せになれるよ
0122NAME IS NULL垢版2018/05/19(土) 12:23:22.88ID:???
>>118
mysqldump クライアントユーティリティーは論理バックアップ を実行し、

普通に翻訳するとこうなると思うんだけど>>117の和訳は何か意図があるの?
0123NAME IS NULL垢版2018/05/19(土) 14:35:18.88ID:???
>>122
どっちも同じ意味だろ?翻訳ってそういうもんだとしか言えん
0124NAME IS NULL垢版2018/05/19(土) 14:56:50.44ID:???
翻訳者に自由はないのか?
せっかく訳してくれてるのに。

そこまでいうなら、おまえが正確無比な翻訳を公開してもいいよ。
0125NAME IS NULL垢版2018/05/19(土) 16:58:08.73ID:???
>>122
日本語とえいごが一対一対応する訳ねぇだろ
0126NAME IS NULL垢版2018/05/19(土) 18:27:50.68ID:a79jEGWC
技術系の書籍の日本語訳に文句を言って自分の無能を棚にあげている奴は多いが
その中の決して少くない数の人々は>>122のようなガチアスペだという事実
0127NAME IS NULL垢版2018/05/19(土) 20:58:48.15ID:R16XYZ3x
Windows10で、MySQL5.6.40を使ってます。
Pythonから利用しています。

連続して10万件ほどデータを書き込みしたいのですけど、
1つのデータをinsertしたらcommitしたほうがいいのでしょうか?
それとも10万件insertしたあとで1回だけcommitしたほうがいいのでしょうか?
0128NAME IS NULL垢版2018/05/19(土) 22:24:08.70ID:???
その10万件のデータが全部Insertされないと整合性がとれないなら、最後に1回Commitで医院で内科医
0129NAME IS NULL垢版2018/05/19(土) 22:49:27.66ID:???
適度に分割するのがいいと思う。
あんまりメモリもディスクもムダに使わないように。
0130NAME IS NULL垢版2018/05/19(土) 23:06:35.14ID:???
あんまり詳しくないんだけど、commitするってことはトランザクション貼るんだよね?
トランザクション貼る必要があったら分割できないし、途中で別処理が乱入してきてデータ不整合になることがないってわかってるならそもそもトランザクション貼らないでinsertすれば良くない?
0131NAME IS NULL垢版2018/05/19(土) 23:33:45.59ID:R16XYZ3x
>>128
>>129
>>130
コメントありがとうございます。
10万件が揃ってないと次の処理に行けないので、
全くわかってないんですけど、beginでロックして
トランザクションにして最後にcommitしてみます。

実行時にディスクやメモリをチェックしてみて
かなり消費しているようでしたら、1万件ずつとかで
commitしてみます。
0132NAME IS NULL垢版2018/05/20(日) 00:57:54.21ID:???
処理に順番があるだけなら、外部でロックして、後続の処理を待たせることも考えたら。
10万レコードを1トランザクションでコミットしなければいけないことなんかそうそうないんじゃないかとも思うので。
0133NAME IS NULL垢版2018/05/20(日) 01:03:32.50ID:???
>>132
これが普通だよな
不要なのにトランザクション使ってるだけならパフォーマンス落ちるだけですむけど、一万件でコミットして次のトランザクション入るまでに割り込まれたらマズいなら作りが悪い
0134NAME IS NULL垢版2018/05/20(日) 14:47:26.65ID:WSY7vKF/
>>132
>>133
ありがとうございます。
実は大きな勘違いがありまして10万件はサンプルであって、
本番用は4000万件が29ファイルの12億件ぐらいあることがわかりました。

1ファイルの4000万件をMySQLに書き込んでみたら4000万件ちょっとで、
2時間かかりましたけど、14Gほどディスク容量を使ってしまって、
Cドライブの残り200Gには入りそうにないことがわかってきまして、
ちょっと呆然としてます。

どうしたらいいか、ちょっと落ち着いて考えてみます。
0135NAME IS NULL垢版2018/05/20(日) 15:19:31.36ID:???
innodb_file_format = Barracuda
を指定して節約するとか
ま、そんな量じゃ小手先だろなw
0136NAME IS NULL垢版2018/05/20(日) 15:30:13.98ID:???
4T位のHDDを4台使ったRAIDで増設しよう
今時1万くらいで買える
0137NAME IS NULL垢版2018/05/20(日) 16:33:21.75ID:WSY7vKF/
>>135
>>136
ありがとうございます。

CドライブがSSDで速いのでいいかなと思っているのですけど、
外付けのハードディスクを使わざるを得ないと思っています。

そこで簡単に外付け(Eドライブ)に移動する方法ですけど、
一度、MySQLを停止しておいて、my.iniのdatadirを指定して、
そこに現在のCドライブのmysql\dataフォルダをコピーしてやって
再起動すれば、そのまま使えるのでしょうか?
0138NAME IS NULL垢版2018/05/20(日) 18:17:26.61ID:???
>>137
135だけど
Barracudaの指定後それだけでは駄目でテーブル定義に
ROW_FORMAT=COMPRESSEDを付け加えないといけないから、そこら辺はいろんな
サイトで確認してくれ
くれぐれも慎重に
0139NAME IS NULL垢版2018/05/20(日) 19:27:27.29ID:???
>>137
問題ない。

しかし、何億件て。w
しかるべき筋に業務として発注したほうがいいんじゃないか。

自前でやっていいのなら、そもそもその全レコードが必要なのかを考えるところからだろ。
サマリ処理ではいかんのかとか。
0140NAME IS NULL垢版2018/05/20(日) 20:00:42.13ID:WSY7vKF/
>>138
>>139
ありがとうございます。
データを調べていたら、不必要なものが15%ぐらいあるようですし、
重複したデータがあって、それは件数さえわかればいいので、
countで件数数えてひとつにまとめます。

他のソフトの結果と連動して使うので、
サマリ処理だけでは済みそうにないんです。
0141NAME IS NULL垢版2018/05/20(日) 20:27:59.02ID:???
それは理由としてまだあやしい。
ま、ここで正確に回答する必要なんかないんだけど。w

とにかく、そんなに簡単な案件ではなさそうなので、あきらめることもあわせてよーく考えるべき。

全レコードが記録されたデータファイルだけが目的なら別だけど、そうでなければ、時間をかけてつくったのにまともに検索できないデータベースができてしまう可能性も高い。
データ構造とかインデックスとかチューニングとか、いろいろあるからね。
0142NAME IS NULL垢版2018/05/20(日) 20:45:20.08ID:WSY7vKF/
>>141
ご指摘ありがとうございます。まさにそのとおりです。
まともに検索できるのかとか心配事は山ほどあります。
ただ、検索するときにはヒット件数が多くありませんので、
なんとかならないかなーと思っています。

とりあえず、やれるところまでやってみようと思います。
0143NAME IS NULL垢版2018/05/20(日) 21:12:44.83ID:WSY7vKF/
1Tの空きのあるEドライブにdataを移動して正常に起動できました。

最初、うまく起動できなかったのですけど、
フォルダのプロパティのnetwork serviceの
フルコントロール権限を与えないといけない、
というのをググって見つけて、そのとおりしたらうまくいきました!
0144NAME IS NULL垢版2018/05/23(水) 21:34:32.98ID:uoNdzmcr
こめかみでさんぷるかー
0145NAME IS NULL垢版2018/05/24(木) 01:39:57.13ID:???
昨日秋葉の99で4Tを買ってきたけど
1台8618円でした
0146NAME IS NULL垢版2018/05/31(木) 10:53:08.78ID:LNEYCf/I
phpMyAdminにバックアップしていたデータベースをインポートしようとすると、
2006エラーで止まってしまいます。
こういう場合どうしたらインポート成功させられるんでしょうか?

MariaDB 5.5.56です。
SQLファイルは253MBあります。
max_allowed_packetが関係しているかなと思って、これを300Mに上げてみました。
それでもダメです。
0147NAME IS NULL垢版2018/05/31(木) 11:48:31.51ID:???
スレ汚し失礼しました。
BigDump.phpでいけました。
0150NAME IS NULL垢版2018/06/01(金) 19:55:16.69ID:???
varchar(n) の n は文字数だったような気がする
0151NAME IS NULL垢版2018/06/01(金) 20:07:47.09ID:TwHoIUZ0
ありがとうございます。
回答をヒントに文字コードをasciiにしたらできました
0152NAME IS NULL垢版2018/06/12(火) 12:53:16.72ID:kMra9FS9
様々な動物に皆で餌を上げます
同じ動物への餌は5分開けないと上げられません
動物に餌を上げるときに動物の種類、餌の種類、現在時刻をテーブルに登録します

この条件を満たすSQL文はどのように書けばいいのでしょうか?

現在は
SELECT time FROM animal WHERE ani=:ani AND esa=:esa AND DATE_ADD(time, INTERVAL 30 MINUTE) > CURRENT_TIMESTAMP() ORDER BY time DESC LIMIT 1
この文で実行してその結果でPHPの条件分岐で
INSERT INTO animal (ani,esa,time) VALUES (:ani,:esa,CURRENT_TIMESTAMP())
この文を実行するかどうか決めています

返り値は5分経ってない場合は残り時間が欲しいです
0153NAME IS NULL垢版2018/06/12(火) 13:20:10.69ID:???
素直に最新のtimeだけとってきてPHPで条件分岐も計算もすればいいんじゃないの
0154NAME IS NULL垢版2018/06/12(火) 13:26:22.90ID:kMra9FS9
それだと複数のユーザが同じタイミングで餌を上げようとすると
両方が5分経ってると情報を渡し2人とも餌を上げられてしまいます
0155NAME IS NULL垢版2018/06/12(火) 13:29:00.05ID:???
そういうのはSQLじゃなく、
給餌システム側でセマフォのような仕組みを
作ってやらないと無理ではないか?
0156NAME IS NULL垢版2018/06/12(火) 13:51:29.72ID:???
なんで?トランザクション使ってないの?
0157NAME IS NULL垢版2018/06/12(火) 14:02:52.77ID:???
あと最後の餌やりから30分以内のときだけtimeを取得する処理の必要性がわからん
0158NAME IS NULL垢版2018/06/12(火) 14:05:31.93ID:kMra9FS9
PDOなので自動でトランザクションが張られてると思います
ですがSELECT→INSERTの間のトランザクションは張られていないので駄目なのだと思います
$dbh->commit()も検討したのですが、結局SELECTでcommitしてトランザクションが切れてからINSERTするので意味がないと思います

すみません
30はコピペミスです
5でした
0159NAME IS NULL垢版2018/06/12(火) 14:38:58.23ID:???
いや自動で張られる訳ないだろ
0160NAME IS NULL垢版2018/06/12(火) 14:40:43.35ID:???
select for update で終わり
トランザクション理解してなさげだからもう一回理解し直した方がいい
0161NAME IS NULL垢版2018/06/12(火) 19:27:55.24ID:???
これ元のSQLも同時アクセスで不正になるよね
0162NAME IS NULL垢版2018/06/13(水) 01:54:27.00ID:???
動物5分置き以内に違うもの食ってないか
0163NAME IS NULL垢版2018/06/14(木) 23:42:14.13ID:???
本当に聞きたかったことって動物の給餌作業の事じゃないんだろう
0164NAME IS NULL垢版2018/06/15(金) 04:56:48.05ID:???
PDOに関する無知だけ晒して礼も言わずに消える奴なんてもう相手にしなくて良いだろ

>>162
話の本筋じゃないからスルーしてたけどそうだよ
0165NAME IS NULL垢版2018/06/15(金) 05:16:18.87ID:1pQ9Lnlg
お返事遅れてすみません
トランザクションについてもう一度理解し直そうと思います
回答ありがとございました
0166NAME IS NULL垢版2018/06/18(月) 06:03:48.73ID:???
松戸どら9 シャブ中どら9 八ゲ崎どら9
0167NAME IS NULL垢版2018/07/03(火) 10:11:07.60ID:???
(すんません、過疎ったスレに投稿したため回答がつかず、マルチお許しください。)

MySQL(に限らずなのかな?)で、null値を許可したnull値のカラムに、null値で更新をかけると、更新タイムスタンプが変更されてしまいますが、仕様ですか?
同カラムの値が1で、そのまま1で更新をかけた場合はタイムスタンプは更新されませんでした。
0168NAME IS NULL垢版2018/07/03(火) 10:35:21.34ID:???
うろ覚えで済まんが、nullはどんな値とも一致しないので
nullで更新かけると結果としてレコードが更新されるんじゃないかな?
0169NAME IS NULL垢版2018/07/03(火) 11:26:51.33ID:???
>>168

なるほど、そういうことなんですね。
納得しました。ありがとうございました!
0170NAME IS NULL垢版2018/07/03(火) 23:41:59.50ID:???
>>167
暗黙のタイムスタンプとかあったっけ?
そのカラムを自分で更新してるんじゃないの?
0171NAME IS NULL垢版2018/07/04(水) 00:41:28.92ID:???
そもそもcurrent time_stamp設定してupdateクエリ通したら更新されるだろ
0173NAME IS NULL垢版2018/07/09(月) 18:16:50.68ID:4KsfzyKg
--single-transaction
--lock-tables

両方指定したらどうなるのっと?
0174NAME IS NULL垢版2018/07/09(月) 18:46:30.21ID:???
人に聞く前に自分で試せよ
0175NAME IS NULL垢版2018/07/23(月) 17:58:58.08ID:???
>>174
MySQLスレで質問すると聞く前に試せって言われるパターン多いよなw
0176NAME IS NULL垢版2018/08/11(土) 00:36:17.89ID:???
それはここに限らないだろう
聞いてしまえばすぐ答えが来るかも知れないが
自分で試して何故そうなるかを考える方が得る物が多いし
そういうチャンスを奪うのはちょっとね

なさけは人のためならずって言うし
0177NAME IS NULL垢版2018/08/11(土) 12:25:28.98ID:XO09tQYU
>>176を意訳すると
「答えられない時は『自分でためせ』と言います」
0178NAME IS NULL垢版2018/08/11(土) 15:51:03.94ID:???
ホントにどうでもいい質問もたしかにあるからな。
ま、しかたない。
0179NAME IS NULL垢版2018/08/11(土) 22:04:51.21ID:LPQu4sBp
どうでも良い質問=答えられない質問
良い質問=答えられる質問

だもんなw
0180NAME IS NULL垢版2018/08/12(日) 23:12:52.09ID:cfFh3cqu
まったく調べもせず、やってもいない人間の相手をしていても、相手の知識がなさすぎて徒労に終わる。
0181NAME IS NULL垢版2018/08/13(月) 00:28:35.68ID:Z3vA2oHx
>>180
おいおいおまえの人生自体がそもそも徒労だって事忘れんなよw
0183NAME IS NULL垢版2018/08/13(月) 22:24:02.70ID:???
252 名前:NAME IS NULL[sage] 投稿日:2018/08/13(月) 18:38:14.55 ID:???
>>250
MariaDBがなかったら、もっと前に MySQLの寿命は尽きてたと思う。
Oracleとしては競合がなければ飼い殺しするつもりのMySQLに金をかけて無いと思う。
Sun買収自体が飼い殺しの意味でしかなかったと思うし。ホント、オープンソースの敵だな。
0184NAME IS NULL垢版2018/08/14(火) 09:16:19.51ID:???
森次慶子 病気 ひき逃げ 在日朝鮮人 ツイッター芸人 韓国 罵倒 ADHD
発狂 5ちゃん荒らし マウント 前科 不倫 もりじ ロブスター ニート
不正利用 右翼 精神科 精神病 騒動 煽り運転 在日 逮捕歴 ストーカー
コンドーム おばさん 痴漢冤罪 炎上  脅迫罪 森次 左翼 差別主義者 躁鬱病
悪徳商法 レイシスト 詐欺 押し売り 傲慢 捏造 パワハラ 自演 ヘイトスピーチ
発症 引きこもり ゲームアプリ 森次慶子 万引き パクリ 著作権侵害 虚言癖
入院 捏造 解雇 自己愛性パーソナリティ障害 異常者 精神疾患 恐喝 覚醒剤
模写 トレース 加害者 強迫観念 ひかりの輪 発達障害 ドラッグ 猫虐待
執行猶予 オウム真理教 反日 胡散臭い ロブおば 大麻 画廊 高慢 芸人
勘違い 薬物 麻原彰晃 森○ 宗教 攻撃性 自己愛性人格障害 暴言 でっちあげ
事件 病状 双極性障害 アルノサージュ 差別 LGBT 暴力 中国 違法
醜悪 粘着質 無職 売れ残り 火病 無断転載 リンチ 暴行 狂人 懲役
不法侵入 DV 統合失調症 架空請求 盗作 心身症 人格障害 創価学会 炎上商法
2ch 作品 精神病棟 Moritsugu 起訴 森次慶子 下手 ぼったくり 幸福の科学 借金
詐欺師 底辺 精神異常 Keiko 性格悪い いじめ 悪辣 自己破産 コンプレックス
ババア F9 生活保護 横浜 引きこもり ウイルス フェミニスト 癇癪
変質者  反社会性パーソナリティ障害 恫喝 売春 人種差別 窃盗 高圧的
@W_Fei_hung
https://twitter.com/W_Fei_hung?s=09
http://peg.thebase.in/
https://togetter.com/li/1172468
https://togetter.com/li/1245978
http://b.hatena.ne.jp/entry/s/togetter.com/li/1172310
https://m.chiebukuro.yahoo.co.jp/detail/q14182486039
https://twitter.com/5chan_nel (5ch newer account)
0185NAME IS NULL垢版2018/09/02(日) 15:43:33.10ID:AgDsMwDo
MySqlで、あるユーザーにCREATE TABLEやDROP TABLEの権限は与えたいが、CREATE DATABASEやDROP DATABASEの権限を与えたくない時はどうしたらいいのだろう?
0186NAME IS NULL垢版2018/09/02(日) 21:56:59.86ID:???
grant文で与えたい権限だけ与えれば良いのでは?
0187NAME IS NULL垢版2018/09/03(月) 02:14:25.91ID:???
grant create,delete on hoge.* to scott;
でhogeDBだけの権限になるかと
0188NAME IS NULL垢版2018/09/03(月) 02:59:50.39ID:xugX4t13
>>185
SQLわかっていますか?
0189187垢版2018/09/03(月) 03:25:32.13ID:???
deleleじゃないやdropだ
折れもわかってないわ
ねみぃ
0190NAME IS NULL垢版2018/09/03(月) 03:26:44.03ID:???
>>188
権限関連は、ちょっとSQLじゃない気がするな。
0191NAME IS NULL垢版2018/09/03(月) 14:50:37.12ID:???
DCLはSQLの範疇じゃないって?
0192NAME IS NULL垢版2018/09/03(月) 19:30:50.18ID:xugX4t13
>>190
はあ?
0193NAME IS NULL垢版2018/09/03(月) 23:01:03.82ID:yDXBCb9I
残念だが、
GRANT CREATE ON TEST_DB.* TO ‘TEST_USER’
とした場合は、TEST_USERは
DROP DATABASE TEST_DB
できるんだな。どうもMySqlの権限の設計はよくわからん。
0194NAME IS NULL垢版2018/09/03(月) 23:33:38.35ID:yDXBCb9I
いや、CREATE、DROP両方の権限をREVOKEしてもCREATE DATABASE、DROP DATABASEできてしまう。なんだコリャ?
お騒がせしました。
0195NAME IS NULL垢版2018/09/04(火) 13:47:35.36ID:Md9f/krD
>>194
MySQLを動かしているユーザーで常時、使っているというオチじゃないだろうなw
0196NAME IS NULL垢版2018/09/04(火) 20:08:47.55ID:ATuYOCng
>>195
プロセスmysqldのUIDは、ユーザーmysqlのものだった。当然そんなアカウントでは使っていない。
マニュアルを引いてみたが、
1.なんでも、flush privilegesというコマンドかある。
2.CREATE権限は、DATABASEとTABLEに分けられない。TABLEを作る権限のある者は、DATABASEを作る権限もある、DROPも然り。
なんかDATABASEに対する考え方がアレだが、これではあんまりだが、それを補うかのように、CREATE TEMPORARY TABLEなる権限があるので、それでなんとかならんか検討してみる。
0197NAME IS NULL垢版2018/09/04(火) 23:57:05.79ID:???
テンポラリテーブルはセッション固有だぞ?
0198NAME IS NULL垢版2018/09/04(火) 23:59:55.01ID:???
flush privilegesは、権限関連コマンドを使わずに、テーブルを直接編集したときに内容をサーバーに反映させるんじゃなかったっけ?
0201NAME IS NULL垢版2018/10/25(木) 22:27:30.51ID:p8qrb39c
wordpressをサーバー移転するため、新サーバー(Xサーバー)にて新規データベースを作成、
ユーザーを割り当て、phpmyadminを開いたのですが、「インポート」のタブを押しても何も変わりません。
それどころか、どのタブを押しても、表示が変わりません。「一般設定」と「外観設定」についてが表示されたままです。
もうどうしたらいいかわかりません…。
0202NAME IS NULL垢版2018/10/25(木) 22:52:11.04ID:???
サポートに連絡すればいいんじゃないの
どう考えてもこのスレの範疇とは思えん
0203NAME IS NULL垢版2018/10/25(木) 23:04:29.94ID:p8qrb39c
あぁ、やっぱり基本的な問題ではない感じですね…ありがとうございます<(__)>
0204NAME IS NULL垢版2018/10/27(土) 13:27:11.83ID:KCNoI/jN
【国連、20mSvから1mSvに戻せ】 線量20倍だと死者8千人が16万人に増加、人口減20万人/年とほぼ一致
http://rosie.5ch.net/test/read.cgi/liveplus/1540606609/l50
国連「女性と子供をフクシマに帰すな」 自民「内政干渉だ! 我々は選挙で選ばれたんだぞ!」
0205NAME IS NULL垢版2018/10/27(土) 14:15:47.63ID:???
gentooに5.7が落ちてきたので、upgradeしたらfile permissionでmysqldが立ち上がらない。
/var/log/mysql
/var/lib/mysql
へのアクセス権がuser=mysqlでことごとく拒否される。
0206NAME IS NULL垢版2018/10/27(土) 14:59:59.39ID:???
実際オーナーとグループは変わってるの?
0207NAME IS NULL垢版2018/10/27(土) 15:31:45.30ID:???
変わってないです。
mysql:mysql
なんですけど、Permissionがないとエラーログが作れず起動に失敗。
0208NAME IS NULL垢版2018/10/27(土) 16:02:40.76ID:???
/varの下に ./mysqldlog を mysql:mysql 755で作成してログ保存するとuser=mysqlで走る。
どこか根本的なところがおかしいのかな...
/var root:root 755
/var/log root:root 664
0209NAME IS NULL垢版2018/10/27(土) 18:12:27.96ID:???
/var/logが664っておかしくない?
0210NAME IS NULL垢版2018/10/27(土) 18:45:17.34ID:???
それだと /var/log の下に入り込めない
755にしましょう
0211NAME IS NULL垢版2018/10/27(土) 19:23:37.79ID:???
/var/log/ 755で上手くいきました。 ありがとうございます。
0213NAME IS NULL垢版2018/12/15(土) 23:10:22.80ID:???
>>10
タルみたいなのはストレージのイメージじゃね?HDDのプラッタとか
0214NAME IS NULL垢版2019/01/03(木) 12:42:44.85ID:???
C#とMySQLでアプリ作っていて質問です
起動時に規定したテーブルがない場合は、あらかじめ作ってあるSQL文に従ってテーブルを
追加するように作っているんですが、存在するテーブルでカラムについても不足したカラムがあれば
カラムを追加するSQLを走らせたいと考えています
必要なカラム名をアプリ側で用意しておいて、MySQL側へカラムが存在するか調べてから
SQL文を生成して追加という方法はとりあえず思いついたのですが
もっとスマートな方法はないもんでしょうか
0215NAME IS NULL垢版2019/01/03(木) 16:15:02.27ID:???
そもそもテーブルだのカラムだのが、不足してるだの追加するだの自体がおかしくないか。そんなコロコロいじくり回すもんなの?
0216NAME IS NULL垢版2019/01/03(木) 16:53:24.01ID:???
>>215
小規模の業務アプリで、業務の変更によって変えざるを得ないことと(現場の要望を積極的に取り入れており)
一定時間以外は、完全に利用が止まるのでカラム変更等は容易であること
年度毎に新しいテーブルを自動生成したいなど・・・
一般的な使い方ではないかもしれませんが、その点はスルーでお願いします
0217NAME IS NULL垢版2019/01/03(木) 17:42:52.51ID:???
>>216
事前に仕様が決まらない、あるいは時々仕様が変わるということであれば、表の構造を
変えるDDLをスクリプトにしm保守作業で実行するのは普通に行われていることかと。

それからデータベーススキーマとアプリケーションとを分離するように意識して、スキーマを優先して
アプリケーションはそれに追随するよう設計すると考えやすくなるかもしれない。
スキーマのバージョンを表す小さな表か、ストアドプログラムにバージョン定数を格納して
アプリケーションはそれを見て動作を変えたり、例外として止めたり。
0218NAME IS NULL垢版2019/01/03(木) 19:35:28.60ID:???
割り切ってあらかじめ「汎用」カラムをたくさん用意しといたほうがマシな気がするなー。
もちろんテーブルはわかりにくくなるけど、そこはアプリで吸収できるでしょ。

どうしてもテーブルを変更するのなら、想定できる最大レコードを仕込んだテーブルを変更するテストは事前にしといたほうが。
思った以上に時間がかかるかもよ?
エンジンとかバージョンによっては、変更処理中はロックされちゃうし。
0219NAME IS NULL垢版2019/01/03(木) 19:47:05.89ID:???
データベースじゃなく、XMLとか別の方法を考えた方が良くないかな
0220NAME IS NULL垢版2019/01/03(木) 20:18:57.64ID:???
よくない。
サーバーとかトランザクションとかなしで、業務レベルのシステムがつくれんのか?
0221NAME IS NULL垢版2019/01/03(木) 20:24:47.09ID:t2yyDM/d
それこそJSONとかの出番だとは思うが
MySQLのJSON関連って使い物になるレベル?
0222NAME IS NULL垢版2019/01/03(木) 20:28:22.57ID:???
>>219
マイグレーションなんてありふれてるやろ
0223NAME IS NULL垢版2019/01/03(木) 21:16:39.10ID:???
XML使うならMySQLでなく、XMLデータベースや、オブジェクトデータベースが
視野に入ると思うが、この人はMySQLは入れ物で、ロジック主体で考えてるっぽい。
0224NAME IS NULL垢版2019/01/03(木) 22:37:55.11ID:???
XML関数があるな。
XPathが使えるらしいから、やってやれないことはないのかな?
でも、インデックスとかJK未対応やろし、たいして使えん気がする。
0225NAME IS NULL垢版2019/01/04(金) 00:41:14.51ID:pTPsWxF+
MySQLをインストールしたんですけどフォルダに入ってるのがMySQL installer for Windows だけでMySQL Serverとか入ってないんですけど再インストールしても同じ感じなんですがアンインストールも完全に出来なくてどうすればいいのか助けて下さいエロい人
0227NAME IS NULL垢版2019/02/24(日) 17:05:08.20ID:???
pythonでMySQLに接続するユーザーについて、
rootで接続してもいいのか、
初めはroot アカウントで接続してPython側で制限したアカウントを動的作成しアプリケーション内ではそのアカウントを使うべきなのか。
みんなどうしてるんですか?
0228NAME IS NULL垢版2019/02/24(日) 17:27:21.93ID:???
普通は管理者の側で制限された権限のユーザーを予め作っておいて
そのユーザーアカウントで操作するものじゃないか?
動的にアカウント生成なんて聞いたことがない
0229NAME IS NULL垢版2019/02/24(日) 17:39:27.63ID:???
>>228
なるほど、確かにそうだ。ありがとう。
よく考えてみたら、今考えているWebアプリは、MySQLのセットアップは、使い手がするので
ユーザー権限について設定してもらうのも難易度高そうだから、pythonで作ったほうが安全かと思ったんだ。
0230NAME IS NULL垢版2019/02/24(日) 19:16:11.38ID:???
たしかに簡単ではないけど、しかしそれがあやしいヤツに、サーバーのセットアップなんかさせてはいかんのではないか?w
0231NAME IS NULL垢版2019/03/09(土) 01:40:49.65ID:wcghpSnr
色々素人ですがmysql をはじめたいと思い、基礎からのMySQLという本を見ながらはじめてみました。
コマンドプロンプトで mysql と打ち込むとエラーと表示されます。
どうしたら解決できるか、何が原因かを見つける方法はありますか?
2003だのローカルホストに接続できないだの10061だのといったものがならんでいるのですが、自分にはさっぱりです。
0232NAME IS NULL垢版2019/03/09(土) 07:42:53.07ID:???
出力されたエラーの内容を読めよ
0234NAME IS NULL垢版2019/03/09(土) 09:32:38.12ID:wcghpSnr
231です
Mysqlがローカルホストに接続できてないってことだと思うんですけど、どうしたらこれが解決するのかがわかりません。、
0236NAME IS NULL垢版2019/03/09(土) 11:29:46.47ID:wcghpSnr
>>235
お昼時ですね
解決してませんがありがとうございます
0238NAME IS NULL垢版2019/03/09(土) 12:35:32.80ID:???
もう一度インストールし直そう
その時にユーザー作成と権限設定手順に注意する
0239NAME IS NULL垢版2019/03/14(木) 02:02:03.45ID:kgm9aOjC
ツイッターやネットでテクノロジー犯罪と検索して、まじでやばいことを四代目澄田会の幹部がやってる
被害者に対して暴力団以外にタゲそらしをしてるがやってるのは暴力団で普段外に出ることが少ないため遊びで公共の電波と同じような電波を使って殺人をしてる
統失はほとんどが作られた病気で実際は電波によって音声送信や思考盗聴ができることが最近明らかになりつつある
警察や病院では病気としてマニュアル化されてしまっているのが現状で被害者は泣き寝入りしてる
被害者がリアルタイムで多い現状を知って、被害者間でしか本当の事だと認知できていない
実際にできると思われていない事だから、ただの幻聴ではない実際に頭の中で会話ができる
できないことだと思われているからこそ真面目に被害を訴えてる
海外でも周知されつつあることを知ってほしい。
このままだとどんどん被害が広がる一方


#テクノロジー犯罪
#四代目澄田会

[参考]
https://black.ap.teacup.com/yamisiougn01/6.html
https://tekunoroji-hanzaihigai.jimdo.com
https://blogs.yahoo.co.jp/patentcom
https://twitter.com/celesty_cs 👀
Rock54: Caution(BBR-MD5:87f20c3c9ee883ab649a4d7f8b996d63)

https://twitter.com/5chan_nel (5ch newer account)
0241NAME IS NULL垢版2019/06/24(月) 10:51:45.40ID:9krJ/01g
MariaDB 10.4.6(゚∀゚≡゚∀゚)
0243NAME IS NULL垢版2019/09/14(土) 23:48:41.85ID:NC5kamIu
age
0244NAME IS NULL垢版2020/02/17(月) 17:57:40.12ID:QWYSyDoB
どうやってもできないのでHelp。昨日入れた初心者。
mysql Workbench8.0。
テーブル作成してカラム作るが、初期値で年を返す、YEAR()をdefault/expressionに
書いて、datatypeをintにするとエラーがでる。
curdate()で DATE型だと問題ない。さんざんやって疲れた。
0246sage垢版2020/02/17(月) 19:54:26.28ID:???
それもやったんですよ。
varchar とかいろいろ試した。
0248NAME IS NULL垢版2020/02/17(月) 22:38:30.96ID:???
初期値に使える関数はかなり限定されてなかったっけ?
単に対応してないだけやろ。
0249NAME IS NULL垢版2020/02/18(火) 00:09:34.17ID:???
substr(current_timestamp(),1,4)

これで代用できないかな
0250NAME IS NULL垢版2020/02/18(火) 05:29:20.08ID:Z+zWjTZ9
>>248
まぁ、それならそれで良いんだけどね。

>>249
かわらず。
0251NAME IS NULL垢版2020/02/18(火) 11:00:30.10ID:???
>>250
DEFAULTの後ろに空白を入れ、substr以下の式を ' で囲まないでやってみて

処理をここにテキストで貼り付けようとすると、インジェクション扱いされる様だが

Query OK, 0 rows affected (0.04 sec)
Records: 0 Duplicates: 0 Warnings: 0

処理は正常に出来たようだ
0252NAME IS NULL垢版2020/02/18(火) 18:09:36.43ID:Z+zWjTZ9
インジェクション対策なんてしてんだ。
結局動かず..w
webにも資料ないんだよね。
0253NAME IS NULL垢版2020/02/19(水) 19:54:46.44ID:???
そもそもMySQLのバージョンは?
デフォルト値に、関数を指定できるようになったのはかなり最近なんやろ。
0254NAME IS NULL垢版2020/02/20(木) 05:03:41.66ID:q2qu5Grp
>>253
最新の8.019。
sqlserverのみだったんで入れてみたんだよね。
0255NAME IS NULL垢版2020/02/20(木) 05:52:20.70ID:q2qu5Grp
MS-ACCESSからMySQLへ変更の際、例えば、
OleDbConnection conn = new OleDbConnection(connectionString);
から
MySqlConnection conn= new MySqlConnection(connectionString);
の様に一部変えるだけで使えるけど何か気を付けるところってあるん?
0256NAME IS NULL垢版2020/03/04(水) 17:54:19.26ID:???
質問いいですか?自分で頑張って調べたんですけど良く分からずといった感じです
MySQLを導入してインストールでき、MySQL Workbenthではローカルサーバの存在を確認でき、コマンドラインでのDBやテーブルの作成は受け付けるのですが、SSMSなどの外部ツールでサーバ名にPC名を入れてもサーバに接続できません。
このような場合どのような原因が考えられるでしょうか……
0257NAME IS NULL垢版2020/03/09(月) 10:00:35.46ID:H9zjrfsB
名前解決してないじゃ。IPアドレス直打ちとか。
同一マシンでないならping打つとか。
0258NAME IS NULL垢版2020/03/09(月) 19:19:17.49ID:rBMftUPy
SSMSはSQL Server専用だから繋がらんぞ
A5とかのODBC対応ツールならODBCドライバを介して接続可能
0259NAME IS NULL垢版2020/04/29(水) 10:40:33.33ID:???
Oracle→MySQL移行ってあまり実例が無いね
効果大きいのに
0263NAME IS NULL垢版2020/04/30(木) 10:07:46.31ID:???
新規に作るならMariaDBやRDS for MySQLは視野に入ると思う
0265NAME IS NULL垢版2020/05/06(水) 13:12:29.93ID:???
Oracle→MySQL
SQL Server→MySQL
に移行するツールは用意されてるのな
その割に移行する案件って少ないよな
0266NAME IS NULL垢版2020/05/06(水) 13:46:12.01ID:???
だってMySQLもどうせOracleでしょ?触らないに越したことはない。
0267NAME IS NULL垢版2020/05/06(水) 14:39:04.23ID:???
最近のディストリにはmaria様が入っている
0268NAME IS NULL垢版2020/05/06(水) 17:16:46.19ID:???
>>266
一応、今はライセンスフリーでしょ
先でJavaみたいにライセンス徴収するかも知れないけど
そうなったらMariaDBにフォークすりゃええし
0269NAME IS NULL垢版2020/05/06(水) 17:43:38.18ID:???
>>268
ライセンスフリーだと?実態はもっとややこしいから調べてこい
0270NAME IS NULL垢版2020/05/06(水) 17:48:58.87ID:???
MySQLの不具合対処もOracle中々やろうとしなかったな
0271NAME IS NULL垢版2020/05/06(水) 19:26:13.32ID:???
>>268
GPLと商用ライセンスの二択。
「ライセンスフリー」ではない。
0273NAME IS NULL垢版2020/05/07(木) 14:20:35.41ID:???
MySQLをわざわざ商用ライセンス契約する様なチョンボする訳無い
0275NAME IS NULL垢版2020/05/07(木) 15:02:17.29ID:???
Community Edition使ってる分には問題無い
0276NAME IS NULL垢版2020/05/07(木) 20:35:31.66ID:???
>>272
MySQL自体でビジネスする場合は商用ライセンスが必要。
独自パッケージとか改造品配布とか?

ま、ふつうはいらんわな。
0277NAME IS NULL垢版2020/05/08(金) 10:15:44.00ID:???
>>276
社内システムならCommunity Editionで良いでしょ
0278NAME IS NULL垢版2020/05/08(金) 10:38:58.68ID:???
社外システムだと、どうなるの?
例えば、公開されているWebのバックエンドで使ってるとか
0280NAME IS NULL垢版2020/05/08(金) 10:44:34.09ID:???
Web公開部分はECシステムとか商用ライセンスだろうけど
イントラシステムはCommunity Editionで良い
0281NAME IS NULL垢版2020/05/08(金) 11:18:20.00ID:???
>>278
ふつうに利用するだけならもちろんGPL で可。
サーバーまるごとを売るなら商用ライセンス必須。
0282NAME IS NULL垢版2020/05/08(金) 11:42:40.33ID:???
ほらややこしくなってきたw
0283NAME IS NULL垢版2020/05/08(金) 12:09:36.64ID:???
基本的にCommunity Editionで十分でそ
0285NAME IS NULL垢版2020/05/08(金) 14:15:59.74ID:???
GPLのClient Library使ってる場合はグレーゾーンに足突っ込んでる
0287NAME IS NULL垢版2020/05/09(土) 05:02:22.77ID:???
>>285
スタティックリンクでなければセーフ。
0288NAME IS NULL垢版2020/05/09(土) 05:20:24.89ID:???
Community Server を観てみたけど、ダウンロード可能なバージョンは現行含めて計3バージョンだった。
それ以前はなくなってるのはサポートポリシーの影響を受けていると推測した。加えてダウンロードページも
トップページから到達しづらかった。正直、合理的な理由がないと採用しづらいと感じる。
0289NAME IS NULL垢版2020/05/09(土) 13:10:48.45ID:???
>>288
んなつまらんことを。w
じゃあやめとけ。
0290NAME IS NULL垢版2020/05/09(土) 14:20:28.57ID:???
>>285
Client libraryなんて使う必要有る?
ODBCで接続すりゃいいだけでそ
0291NAME IS NULL垢版2020/05/09(土) 15:28:34.53ID:???
>>290
ODBCドライバーを自作してるかw
すごいねー
0292NAME IS NULL垢版2020/05/10(日) 12:49:54.79ID:???
>>291
自作する訳無い
既存のADO.NETとか使うだけでそ
0293NAME IS NULL垢版2020/05/10(日) 13:31:16.29ID:???
>>292
ADO.NETはただの抽象レイヤーだからそれだけじゃ無理やろ
0294NAME IS NULL垢版2020/05/10(日) 15:24:33.33ID:???
>>292
自作してないなら
MySQL用のADO.NETドライバーかODBCドライバーを使ってんだよ
それらの総称がClient Libraryだから

GPL警察に通報だなw
0295NAME IS NULL垢版2020/05/11(月) 11:20:31.69ID:???
既存のClient Library使うとGPL v2違反になるのか?
それじゃCommunity EditionでClientアクセスしたら全て違反じゃん
0297NAME IS NULL垢版2020/05/11(月) 12:30:20.92ID:???
MySQLを使うと違反になるんだな
0299NAME IS NULL垢版2020/05/11(月) 17:11:49.68ID:???
MySQL Connector使えば済む話
0300NAME IS NULL垢版2020/05/11(月) 17:33:44.24ID:???
>>299
>Client libraryなんて使う必要有る?
>ODBCで接続すりゃいいだけでそ
>既存のADO.NETとか使うだけでそ
>MySQL Connector使えば済む話

救いようがないな
もうMySQL使ってるやつは低能ってことでOk?
0303NAME IS NULL垢版2020/05/11(月) 20:22:17.02ID:???
>>301
細かいようでいて、いいかげんな。。。

だいたい、GPLにビビるなら、金で解決できる商用ライセンスも選択できるほうが安心やろ。
0306NAME IS NULL垢版2020/05/12(火) 10:08:53.19ID:???
>>303
Oracle、SQL Serverより安いから良いレベル
0310NAME IS NULL垢版2020/05/12(火) 14:07:15.86ID:???
商用ライセンスでもOracle使うよりマシ
まあPostgreSQL使えって話も有るがPostgreSQLにもクセは有るしね
0311NAME IS NULL垢版2020/05/12(火) 14:35:47.88ID:???
商用ライセンス使うためにMySQLを選ぶのは理解できるが
それ以外でMariaじゃなくMySQLを選ぶメリットってある?
0312NAME IS NULL垢版2020/05/12(火) 14:44:46.82ID:???
>>308,309
こういう劣化二次ソースしか読まないから
MySQLを使ってるやつは低能って言われるんだぞ
どちらもライセンスとは何かを理解してない
0314NAME IS NULL垢版2020/05/12(火) 15:59:52.27ID:???
>>312
こんな風に混乱してるやつらがいるよって例なんじゃないの?
0315NAME IS NULL垢版2020/05/12(火) 16:25:18.97ID:???
>>311
Cluster化が視野にあるとか?
そうでなくても、マルチコア関連で性能が違ったような。
0317NAME IS NULL垢版2020/05/13(水) 15:44:05.98ID:???

自社でWEBサービスを公開するだけなら、自社開発で使うことは問題ないでしょう。

0318NAME IS NULL垢版2020/05/13(水) 16:14:58.78ID:???
>>316
Webサービスとして公開したアプリのソースコードにライセンスをつける必要ある?

ソースコードをライセンスする理由をまず理解しようぜ
0319NAME IS NULL垢版2020/05/13(水) 16:29:00.79ID:???
>>318
>>Webサービスとして公開したアプリのソースコードにライセンスをつける必要ある?

無いね

ゆえに自社で使うwebサービスシステムはCommunity editionで良い

商用するwebサービスだけ商用ライセンス契約してStandard editionかEnterprises edition買えば良い
0320NAME IS NULL垢版2020/05/13(水) 17:03:07.33ID:???
>>319
違う。
商用サービスであっても、GPLでよい。
パッケージ(バイナリ)だけに注目しろ。

たとえ無料サービスでも、それを提供するパッケージを第三者に渡す場合、GPLに基づいて、ソースを渡す必要がある。

なお、AGPLは別。
0321NAME IS NULL垢版2020/05/13(水) 17:05:00.35ID:???
>>319
>商用するwebサービスだけ商用ライセンス契約してStandard editionかEnterprises edition買えば良い

ほんとに理解してる?
開発したWebサービスをパッケージ的に他社にライセンス供与して配布する場合以外は
GPLライブラリを使ってたとしてもそのWebサービスのソースライセンスをGPLにする必要ないよ
商用のWebサービスでもね
0322NAME IS NULL垢版2020/05/13(水) 17:45:31.82ID:???
ほらみんな混乱してるやんw
0323NAME IS NULL垢版2020/05/13(水) 17:53:00.22ID:???
>>322
分数ができないヤツがいるからといって、分数が悪いわけではない。
そいつが小学生からやりなおせばよいだけ。
0325NAME IS NULL垢版2020/05/13(水) 18:18:34.62ID:???
もしも、の事考えて社外に公開する部分だけ商用ライセンス契約する、でいいじゃんw
特に問題無いハズ
0326NAME IS NULL垢版2020/05/13(水) 18:22:46.40ID:???
世の中の小学生の大半は分数計算が当たり前にできるけど
MySQL教科書を使ってる小学生に限ってはその大半が分数計算ができない状態

教科書の問題なのか学校や先生の問題なのか
それとも小学生自身の問題なのか
0327NAME IS NULL垢版2020/05/13(水) 21:17:44.14ID:???
>>325
問題はないが、無駄金。

もちろん、対価を払いたいとかサポートがほしいとか、理由があれば別。
0328NAME IS NULL垢版2020/05/13(水) 21:21:24.37ID:???
>>326
大学で分数を教えることもある。
世の中にはアホが少なくない。
しゃあない。

まあ、GPLを理解できないようなヤツが商用サービスをつくることなんかあり得ないから、心配すんな。w
0329NAME IS NULL垢版2020/05/14(木) 02:20:16.87ID:???
>>328
そのアホが集まってるんだよってこった
0330NAME IS NULL垢版2020/05/14(木) 10:12:38.22ID:???
>>329
有名税。
人の数が多いと、アホも増える。
さらに2chはアホが濃縮する。
しゃあない。
0331NAME IS NULL垢版2020/05/14(木) 10:32:19.79ID:???
MySQLスレも、データベース板も、
人が多い場所とは思わなかった
0332NAME IS NULL垢版2020/05/14(木) 11:26:20.82ID:???
現場はもっと混乱してるか、そもそもライセンスなんて考えたことすらないのか
0333NAME IS NULL垢版2020/05/14(木) 12:12:06.72ID:???
>>327
>>サポートがほしいとか
結構、これが大きいかもね
0334NAME IS NULL垢版2020/05/14(木) 14:00:22.90ID:???
基本的にはCommunity editionでOK

サポート欲しいとかGPL汚染危惧するなら商用ライセンス買っておけ、ってぐらいでそ
0335NAME IS NULL垢版2020/05/14(木) 15:08:52.86ID:???
クラスタ化意識するなら商用ライセンス買っても良い

それぐらい
0338NAME IS NULL垢版2020/05/14(木) 15:55:34.27ID:???
「クラスタ化意識するなら商用ライセンス買っても良い」
「なぜ?」
「(MariaじゃなくMySQLを選ぶのは)Cluster化が視野にあるとか?」

質問に答えないだけでなく
さらにアホなレスを引用するとは
さすがMySQLユーザー
0339NAME IS NULL垢版2020/05/14(木) 16:10:14.24ID:???
そのクラスタ化に商用ライセンスバージョンが必要だからでしょ
0341NAME IS NULL垢版2020/05/14(木) 19:01:01.16ID:???
https://qiita.com/You_name_is_YU/items/84e428ab59dc12924b46

MySQLデータベース製品を利用してソフトウェアを開発した場合ですが、プロセス間通信はGPLに触れないとのこと。
そのため、Webアプリケーションを開発する際のバックエンドとしてMySQLを利用している場合、商用に利用しても開発したソフトウェアのソースコードを公開する義務は発生しない。

分離したプログラムの間で使われるコミュニケーションメカニズムによって、コマンドラインやソケット通信などによって利用される場合は、同梱されていると判断されないため、GPLライセンス範囲外となるが、
同じ実行ファイルに含まれてる場合などは、同梱されているとみなされ、GPLのライセンスが適用されなければならない。
0342NAME IS NULL垢版2020/05/14(木) 21:41:36.15ID:???
>>341
またこういう理解してないやつが書いた劣化記事を持ってくる
冗談抜きでMySQLユーザーは低能が多いみたいだな

Client Libraryはアプリにリンクされて使われるのでプロセス間通信ではない
0343NAME IS NULL垢版2020/05/14(木) 22:09:54.57ID:???
ワザと使いにくくしている某O社なのか
0346NAME IS NULL垢版2020/05/15(金) 00:52:12.94ID:???
>>345
それは、向こうの言い分。
鵜呑みにするのも低能なアホ。

完全に明瞭ではないので、別の見解がある。
http://ossforum.jp/node/497

MySQLで裁判になったこともあるようだけど、あきらかにアウト過ぎる事例で、判断が難しい。
まあ、&#128125;としか。
0348NAME IS NULL垢版2020/05/15(金) 01:28:39.06ID:???
>>346
「スタティックリンクでなければセーフ」とかマジで言ってたやつが何言ってだかww

鵜呑みにするもなにも向こうの言い分に同意しないとGPLなソフトは使えないから

こうも低能ばかりだと低能汚染されそうだからもう触るのやめるわ
0349NAME IS NULL垢版2020/05/15(金) 01:31:45.13ID:???
根性無しw

いえ、お疲れ様です
懲りずに、講釈お願いしますです
0350NAME IS NULL垢版2020/05/15(金) 02:50:21.84ID:???
結局みんなよく理解せずに使ってるって認識でおーけー?
0351NAME IS NULL垢版2020/05/15(金) 02:57:04.39ID:???
理解している人は理解している
突き詰めるとぶつかるので避けている
0352NAME IS NULL垢版2020/05/15(金) 03:27:37.90ID:???
Oracleの気分次第ってことか
0353NAME IS NULL垢版2020/05/15(金) 10:07:14.92ID:???
>>348
「言い分」に従う必要はない。
「ライセンス」として契約するだけ。

まあ、おまえがこれを読むことはないはずだが。w
0354NAME IS NULL垢版2020/05/15(金) 10:23:53.52ID:???
>>352
多分、究極はそれ
OracleがJavaの様に商用ライセンスのみ、にしたらJavaみたいにMySQLは衰退する
0355NAME IS NULL垢版2020/05/15(金) 11:08:06.25ID:???
>>354
そうなったらMariaDBに移行すれば良いだけ、だしね
0356NAME IS NULL垢版2020/05/15(金) 11:13:49.61ID:???
Oracleに関わるとろくなことがない
0360NAME IS NULL垢版2020/05/15(金) 16:38:06.40ID:???
>>353
「ライセンス」として契約しておけば、GPL制約受けないの?
0361NAME IS NULL垢版2020/05/15(金) 16:45:46.41ID:???
>>359
サポート無しでは知識や能力的に無理だから商用ライセンスが必要なんでしょ
0362NAME IS NULL垢版2020/05/15(金) 17:24:55.71ID:???
>>360
ライセンスは、書いてあるとおりに適用される。
書いてないことは強制できない。

詳細は裁判で。
0363NAME IS NULL垢版2020/05/15(金) 17:50:41.11ID:???
>>361
そういう事
Community Editionでクラスタ化出来るけど、面倒だからね
0364NAME IS NULL垢版2020/05/15(金) 17:52:56.21ID:???
>>360
GPL制約が鬱陶しいと思うなら商用ライセンスバージョン買えば良い
0365NAME IS NULL垢版2020/05/15(金) 17:54:05.19ID:???
何にせよCommunity Editionで事足りる
GPL気にしないならね
0366NAME IS NULL垢版2020/05/15(金) 18:12:26.60ID:???
>>365
気にしてても、ふつうはGPLでいける。

ダメな場合はかなりのレアケース。
何をするつもりなのか、問い質したいレベル。
0367NAME IS NULL垢版2020/05/15(金) 18:34:38.46ID:???
>>366
>>ふつうはGPLでいける
いけない部分はGPL言語(PHPとか)で実装してる場合にまとめてパッケージ提供してる場合でしょ
0369NAME IS NULL垢版2020/05/16(土) 11:25:39.00ID:???
フリーライセンスだから
0370NAME IS NULL垢版2020/05/17(日) 02:23:46.24ID:???
販売するとなるとややこしいんでしょ
0371NAME IS NULL垢版2020/05/17(日) 14:00:08.12ID:???
>>370
金は関係ない。
無料でも問題になる。
0372NAME IS NULL垢版2020/05/17(日) 14:36:38.69ID:???
>>370,371
Community editionで他のGPL(PHPとか)の成果物と纏めて販売したら問題になると思われる
そういう場合は商用ライセンス版を使う
0374NAME IS NULL垢版2020/05/18(月) 09:54:54.57ID:???
Community editionで良いじゃん
問題になるのはレアケースなんでしょ
0375NAME IS NULL垢版2020/05/18(月) 10:33:21.05ID:???
Commercial Editionで良いじゃん
GPLすら理解できないんでしょ
0376NAME IS NULL垢版2020/05/18(月) 11:12:01.06ID:???
GPLを含めた形で販売したい場合はどういうことを守らないと行けないの
0377NAME IS NULL垢版2020/05/18(月) 11:20:42.82ID:???
LAMPの例からしてGPLで固めていれば問題無いんでしょ
そこにC#とかC++とか入るとGPLパッケージで無くなるので問題なんでしょ
0378NAME IS NULL垢版2020/05/18(月) 12:07:14.63ID:???
>>376
事実上、「販売」に意味がない。
もし「販売」しても、購入者はGPLに基づいて再頒布することが可能。
つまり、購入者がそのまま商売敵になる。w
0379NAME IS NULL垢版2020/05/18(月) 12:43:20.17ID:???
>>378
サポート付きサブスクリプションで販売すればええんやで
0380NAME IS NULL垢版2020/05/18(月) 17:01:10.98ID:???
>>379
それはもうただの保守契約やろ。
サブスクリプションの部分には意味がないんやから。
0381NAME IS NULL垢版2020/05/18(月) 18:21:10.64ID:???
社内システムで再頒布する事想定してないシステムならCommunity editionで十分でしょ
0382NAME IS NULL垢版2020/05/18(月) 18:38:27.34ID:???
>>380
例えばGPLのアドブロッカー(クライアント)を販売して
販売元でライセンス購入した人にだけ追加サブスクリプションで
日々更新されるアドフィルターをサーバーからダウンロード可能にする
みたいなモデルは成立しうる
0383NAME IS NULL垢版2020/05/18(月) 20:43:35.09ID:???
>>382
要は、「フィルタ」データの販売?
あくまでデータなら、いわゆるGPL汚染の影響は受けないのか?

レアすぎてよくわからん。。。
0384NAME IS NULL垢版2020/05/18(月) 20:57:01.76ID:???
いや、それなら本体の販売はいらんやろ。
データだけ別に販売したらええんや。w
0385NAME IS NULL垢版2020/05/18(月) 21:36:23.58ID:???
>>383
追加フィルタのライセンスをGPLにする必要がないのはもちろんだけどそこはあんまり重要じゃない

GPLライセンスで提供したクライアントソフトの実行・改変・再配布を妨げなければ
そのクライアントと連携する(combined workではない)サービスやソフトはGPLにする必要がないから
やり方次第で有償のビジネスに普通に使えるという話

GPLでやってるところはレアかもしれないが
ビジネスモデルとしては一般的
0389NAME IS NULL垢版2020/05/19(火) 15:42:24.15ID:???
面倒なんで
PostgreSQLで良い
0392NAME IS NULL垢版2020/05/19(火) 15:56:35.22ID:???
OracleやMySQLってドライバーのリリースが周回遅れなんだよなあ
0393NAME IS NULL垢版2020/05/19(火) 16:01:59.50ID:???
https://www.isoppe.jp/?p=3258

結果としては、利用者が法人であっても、社内掲示板やナレッジベースのような用途で
第三者がアクセス出来るように外部公開しなければ、無償で利用できるそうです。
0394NAME IS NULL垢版2020/05/19(火) 16:04:53.84ID:???
第三者がアクセス出来るシステムは商用ライセンス買えば良いと言える
0395NAME IS NULL垢版2020/05/19(火) 16:14:23.43ID:???
>>393
もう何いってんのw
掲示板やナレッジベースを第三者がアクセス出来るように外部公開しても商用ライセンスは不要だぞ
なんでこんな簡単なことが理解できないんだ?

Oracleに聞いたと書いてるが聞いたやつの頭がよほど悪いのでなければ
Oracleの担当者が意図的に騙そうとしたとしか考えられん
0396NAME IS NULL垢版2020/05/19(火) 16:35:24.13ID:???
Oracle自身は出来るだけ商用ライセンスを売りたい、からね
そりゃ騙すでしょ
0397NAME IS NULL垢版2020/05/19(火) 16:44:43.61ID:???
Oracleの意向無視してCommunity edition使えば良いって話だね
0399NAME IS NULL垢版2020/05/19(火) 17:02:45.21ID:???
>>388
1.MySQLを使用したソフトウェアを他の人に渡さない

→社内システムのみの使用であればこのケースに該当します。

2.MySQLを使用したソフトウェアを他人へ渡すが、ソースコードの開示、ソフトウェアの改変、および再配布を無制限に誰でも許可する

→MySQLを組み込んだソフトウェアに著作権をつけないイメージです。誰でも好きに使用できる状態で譲渡します。
0400NAME IS NULL垢版2020/05/19(火) 17:30:02.43ID:???
>>399
>→MySQLを組み込んだソフトウェアに著作権をつけないイメージです。誰でも好きに使用できる状態で譲渡します。

ほんといい加減にしろ
著作権とライセンスの違いも理解してないのか?

GPLのMySQLを組み込んだソフトを再配布するのであればGPLにしなきゃいけないだろ
誰でも好きに利用できるんじゃなくGPLの範囲内でのみ利用できる
0401NAME IS NULL垢版2020/05/19(火) 17:38:16.53ID:???
>>393
さすがボラクル。w
騙す気マンマンやな!

あるいは、「公開」の対象がサービスかソフトウェアかで誤解してるんかな?
GPLは、そこを確認せんといかんのに。
0402NAME IS NULL垢版2020/05/20(水) 14:27:05.98ID:???
GPLの公開の対象はソフトウェア
ゆえに社内システムでは既に社内に公開してる、と言える
0404NAME IS NULL垢版2020/05/21(木) 11:37:24.15ID:???
みんなOracleサポートに騙されて商用ライセンス買わされてるんだよ
0405NAME IS NULL垢版2020/05/21(木) 15:50:57.11ID:???
で、積極的にCommunity edition使うと法的手段を取られる可能性が出て来る訳だよ
0406NAME IS NULL垢版2020/05/21(木) 16:23:12.24ID:???
http://esuppo.ecopls.link/syublog/Blog/17

MySQLのライセンスは別、MySQL=GPLではないのです

MySQLの言ってるライセンスは2つのライセンスがあります。

GPLもありますが、商用ライセンスもあります。

どちらに当たるかはあなたの使い方次第です。

必要なら商用ライセンスを購入してください。

使い方がどちらに当たるかは今は言えません、その判断は司法の判断によります。

つまり、業務システム受託においてMySQLのを利用することは、リスクがあることは間違いありません。

独自判断で、大丈夫と判断しても自分または自社の判断のもとに内製ソフトで使うのは自由ですが

プログラム受託でデータベースにMySQLを採用して提案することは非常に危険だと思います
0407NAME IS NULL垢版2020/05/21(木) 17:14:48.80ID:???
postgreにしておけば困ることはない
0408NAME IS NULL垢版2020/05/21(木) 17:21:59.39ID:???
>>406
「危険」じゃねえよ。
発注元に相談しろっつーの!

どうせ成果物まるごと渡すなら、関係ない話やし。w
0409NAME IS NULL垢版2020/05/21(木) 19:53:07.67ID:???
https://mixi.jp/view_bbs.pl?comm_id=2234&;id=1487053

念の為、こちらでも株式会社ソフトエイジェンシーに確認してみました。

それによると、(組み込み・外部サーバーに関わらず)MySQLを利用するシステムを配布・販売する場合、GPLライセンスとしないのであれば、コマーシャルライセンスの購入が必要になるそうです。

社内LANなどクローズドな環境ではなく、公開されているWEBサーバーで利用する時点でASPサービス扱いとなり、MySQL OEM ライセンスではなくMySQL Enterprise ライセンス(年/サーバー)となります。


これも代理店に騙されてるね
0410NAME IS NULL垢版2020/05/22(金) 01:17:37.28ID:???
>>409
いや、あってるやろ。
誤解しやすい構成になっているとも思うが、内容はきっと正しい。

前段は、商用ライセンスとなる条件。
後段は、その商用ライセンスを選択した前提で、その種類。
0411NAME IS NULL垢版2020/05/22(金) 02:11:11.26ID:???
商用ライセンスを選択して公開Webサービスで利用する場合
StandardじゃだめでEnterpriseにしなきゃいけないって制約ある?
0412NAME IS NULL垢版2020/05/22(金) 10:05:14.72ID:???
(組み込み・外部サーバーに関わらず)MySQLを利用するシステムを配布・販売しない場合はCommunity editionで良い、となるな
0413NAME IS NULL垢版2020/05/22(金) 10:58:05.95ID:???
買収前のMySQLのリファレンスにはどういうケースならFreeのGPLで使えるかわかりやすく明記されてる
0414NAME IS NULL垢版2020/05/22(金) 11:06:20.62ID:???
1.4.3.1 Using the MySQL Software Under a Commercial License

You need a commercial license:

・When you link a program with any GPL code from the MySQL software and don't want the resulting product to be GPL,
maybe because you want to build a commercial product or keep the added non-GPL code closed source for other reasons.
・When you distribute a non-GPL application that only works with the MySQL software and ship it with the MySQL software.
This type of solution is actually considered to be linking even if it's done over a network.
・When you distribute copies of the MySQL software without providing the source code as required under the GPL license.
・When you want to support the further development of the MySQL database even if you don't formally need a commercial license.


1.4.3.2 Using the MySQL Software for Free Under GPL

You can use the MySQL software for free under the GPL if you adhere to the conditions of the GPL.
Some common cases:

・When you distribute both your own application as well as the MySQL source code under the GPL with your product.
・When you distribute the MySQL source code bundled with other programs that are not linked to or dependent on the MySQL system for their functionality
even if you sell the distribution commercially. This is called mere aggregation in the GPL license.
・If you are not distributing any part of the MySQL system, you can use it for free.
・When you are an Internet Service Provider (ISP), offering web hosting with MySQL servers for your customers.
・When you use the MySQL Database Software in conjunction with a web server, you do not need a commercial license (so long as it is not a product you distribute).
This is true even if you run a commercial web server that uses MySQL Server, because you are not distributing any part of the MySQL system.
0415NAME IS NULL垢版2020/05/22(金) 12:25:27.36ID:???
まだこの話題引っ張ってるのか
それだけみんなわかってないんだろな
0416NAME IS NULL垢版2020/05/22(金) 13:40:00.48ID:???
わかっている人がわかるように説明をして
0417NAME IS NULL垢版2020/05/22(金) 14:02:58.48ID:???
MySQLユーザーは低能だから英語は読めない
0418NAME IS NULL垢版2020/05/22(金) 14:38:28.50ID:???
>>415
それだけ奥が深い、と言うかややこしい
0419NAME IS NULL垢版2020/05/22(金) 14:49:44.07ID:???
http://blog.ks2.info/?p=257

大事なのでもう一度。
 配布されているものを使うだけなら無償。
 個人でも有償配布やソースコードを公開しない場合はライセンスを買う必要がある。
 それがGPL。

 企業でもGPLに従えばGPLである。

公開先にのみ公開すればいいだろうから、社内システムで社内に公開する分にはいいのかもしれない。

極めつけは、受託開発である。
 使う側のライセンスではなく、開発側のライセンスだ。
 要はMySQLを含んだシステムを開発し、それを納品するのだからMySQLを含んだ製品の販売にあたるというのである。
 この場合、通常の商用ライセンスではなく、OEMライセンスなのだという。
 なるほど、よく考えたものである。
0420NAME IS NULL垢版2020/05/22(金) 15:31:19.18ID:???
>>419
なんでそんな個人の感想を書いたサイトしか引用できないんだ?

>個人でも有償配布やソースコードを公開しない場合はライセンスを買う必要がある。それがGPL。
間違い
無償配布でもGPLに従わないなら商用ライセンスを買う必要がある
「それがGPL」も間違い

>要はMySQLを含んだシステムを開発し、それを納品するのだからMySQLを含んだ製品の販売にあたるというのである
これも間違い
ボラクル/代理店が勘違いさせようとする論法と同じ

本当のところは商用ライセンスが必須かどうかは状況による
一番わかり易いのは著作権を譲渡する場合で
開発側がソフトウェアの使用許諾を受託側に与える必要はないので
ライセンスは問題にならない(配布にもあたらない)

>>414読めばわかる
0421NAME IS NULL垢版2020/05/25(月) 15:37:28.58ID:???
結局、大勢騙されてる部分が有る
そもそも社内でしか公開しないシステム(イントラネットとか)で商用ライセンスは不要だしね
0422NAME IS NULL垢版2020/05/30(土) 13:13:44.17ID:???
オートコミットがデフォルトでONだと何が不味いの?
0423NAME IS NULL垢版2020/05/30(土) 16:40:17.14ID:???
何もまずくないよ
運用ルールとして統一してればいいだけ
0424NAME IS NULL垢版2020/06/24(水) 02:02:25.95ID:???
mysqlで売上の管理をやりたいんだけど
UIって別途なんらかのコードで書いてそれにmysqlをリンクさせる感じなんですか?

mysql自体はGUI使えばACCESSみたいに操作できたのですが……
0425NAME IS NULL垢版2020/06/24(水) 03:38:16.13ID:???
GUIってなんや?
Workbenchのことか?
あれは要するに単純?なクライアントでしかないで。

ふつうは、クライアントライブラリをリンクして、SQL言語をテキストで記述して、データの制御を行う。

まあ、ぐぐって初心者用Webサイトを探せ。
こんなところで聞いてたらキリがない。
0426NAME IS NULL垢版2020/06/24(水) 13:07:42.86ID:???
>>425
いわゆるソフトみたいなフォームとかつくるやつです
0427NAME IS NULL垢版2020/06/24(水) 14:14:08.46ID:???
MySQLはAccessのようにローカルDBとフォーム作成ツールが一体化してるものじゃない
Accessに使いなれてるならMySQLのフロントとしてAccessでUI作ればいいよ

他にもサードパーティのツールあるけど
フォームの作り方やツールの使い方がそれぞれ違う
0428NAME IS NULL垢版2020/06/24(水) 15:02:02.26ID:???
>>427
おすすめのフォーム作成ツールはありますか?
0429NAME IS NULL垢版2020/07/05(日) 21:12:31.78ID:QjRfRJ2G
phpmyadminでログインできなくなりました
このエラーなんですが、config.inc.phpを編集したらログインは出来ます
MySQL said: Documentation
Cannot connect: invalid settings.
mysqli::real_connect(): (HY000/1045): Access denied for user ''@'localhost' (using password: NO)
phpMyAdmin tried to connect to the MySQL server, and the server rejected the connection. You should check the host, username and password in your configuration and make sure that they correspond to the information given by the administrator of the MySQL server.

$cfg['Servers'][$i]['auth_type'] = 'cookie';

この後どう設定すればいいんでしょうか?
認証タイプはconfigじゃないといけないのですか?もとに戻したい、、、
0432NAME IS NULL垢版2020/07/14(火) 13:48:46.74ID:???
>>431
mariaDB板あったの知らなかった スマソ
ゴメン OpenWrtは一般ユーザーでログインできない。
パスなしでroot@localhostにログインしてるから自動的に判別してるのかもしれない
http://uproda11.2ch-library.com/e/es002878655615874511265.jpg
匿名ユーザ消してるけどログはConnect root@localhost as anonymous onとなっていて気持ち悪いけど
0434NAME IS NULL垢版2020/07/14(火) 15:29:42.78ID:???
>>432
>2019年6月17日にGAとなった MariaDB Server 10.4 ではユーザ認証を管理するテーブルが
>mysql.user から mysql.global_priv テーブルに変更されています。

>unix_socket プラグインは以前から Debian などでは有効になっていましたが,10.4.3 から
>デフォルトの認証形式となりました。この認証方式の場合,MariaDB ユーザ名と同じユーザが
>Linux OS上で存在すれば,MariaDB サーバに接続可能となります。

だそうです
0435NAME IS NULL垢版2020/07/14(火) 15:34:32.12ID:???
>>433
>>434
納得しました。ありがとうございました。1日調べたけどわからなかったです。
0436NAME IS NULL垢版2020/07/27(月) 23:17:07.31ID:???
【知らなかった】MySQLの「My」 は、作った人の娘さんの名前で、英語「自分の」とは全く無関係なんです
https://togetter.com/li/1562676

まとめました。

Andy Hall @fenomas
今日知りました:MySQLの My は、作った人の娘の名前。
英語「自分の」とは全く無関係。
2020-07-20 14:04:52

原岡 昌寛@ビヨンド代表 | クラウドMSP @wacca13
そうなんだ、知らなかった。
確かに公式ページにも書いてある
https://dev.mysql.com/doc/refman/5.6/ja/history.html

Maria DBも末娘の名前なんだね。
2020-07-20 15:00:16
0437NAME IS NULL垢版2020/07/28(火) 03:55:24.96ID:???
大元の開発企業は「MySQL AB」という、妙にできすぎた名前だったということも知られてなさそう?
0438NAME IS NULL垢版2020/07/28(火) 08:34:49.51ID:???
表の結合で悩んでます

select SUBSTRING_INDEX(a.oid, '.', -1) as oid,b.local_data_id from tbl1 a
left join
(select distinct local_data_id,SUBSTRING_INDEX(arg1, '.', -1) as arg1 from tbl2
) as b
on a.oid = b.arg1;

こういうSQLを実行して、表を結合させたいのですが、
tbl2の値が入ってほしい部分が、全部NULLになります。

SUBSTRING_INDEXがいけないのかと思い
SUBSTRING_INDEXで加工した値を入れた作業表を作って※、
やってみると期待通りの結果になります。

どうやれば、NULLにならずに値をいれて結合することができるのでしょうか。

※こんなSQLで作業用の表を、tbl1、tbl2の両方で作りました。
update tbl, (select * from tbl) tbl2
set tbl.arg1=SUBSTRING_INDEX(tbl2.arg1, '.', -1)
where tbl.arg1=tbl2.arg1
0439NAME IS NULL垢版2020/07/28(火) 11:18:19.55ID:???
>>438
「b.local_data_id」はあるか?
面倒だから確認してないけど、テーブルbがあやしい気がする。
0440NAME IS NULL垢版2020/07/28(火) 21:09:01.98ID:???
その結合だとaは実テーブルのカラムだと思うが
a.oidのa.はいらないんじゃない?
0441NAME IS NULL垢版2020/07/28(火) 22:47:14.94ID:???
>>440
え。
ふつうは絶対にかならず書くようなもんじゃないの?
0442NAME IS NULL垢版2020/07/28(火) 23:18:56.81ID:???
>on a.oid = b.arg1;

a.oidはSUBSTRING_INDEXする前の値で
b.arg1はSUBSTRING_INDEXした後の値だと思うんだけど
それは意図通りなわけ?

>>440が指摘してるのはそこ
0443438垢版2020/07/28(火) 23:21:33.40ID:???
原因考えてみたんですけど、SQLの評価準に原因があるっぽいですね。

@.arg1とoidは値が違う
ASUBSTRING_INDEXで加工すると同じ値になる
Bところが、SELECTよりJOINのほうが先に評価される
C結果異なる値なので、値が出てこない。

原因わかったんですけど、VIEW作ったりしないと無理っぽいんですかねこういう場合って
0444NAME IS NULL垢版2020/07/28(火) 23:29:11.30ID:???
>>442
SUBSTRING_INDEX(a.oid, '.', -1) AS oid
FROM tbl1 (AS) a
とあるから、JOIN節のa.oidは後の値じゃないか?
# 前でも後でもあるのか。w
0445NAME IS NULL垢版2020/07/28(火) 23:34:34.82ID:???
おっといきちがった。

>>443
前のFROM節もサブクエリにしたら。
FROM (SELECT ... AS oid) AS a
LEFT JOIN (SELECT ... AS arg1) AS b
...

でも、ややこしいSQLになった場合、わりきって事前にテンポラリテーブルを別につくったほうが速いこともあるので、念のため。
0446NAME IS NULL垢版2020/07/28(火) 23:37:32.03ID:???
>>443
評価順はSQLの標準なんだから
原因は君の書き方にあるんじゃないのかな?

>>444
aはtbl1の別名でselectした結果セットの別名ではないよ
0447438垢版2020/07/28(火) 23:39:54.89ID:???
>>444
>>442
ありがとうございます。最初の
select SUBSTRING_INDEX(a.oid, '.', -1) as oid,b.local_data_id from tbl1 a
をふく問い合わせにしたらうまくいきました!!
0448438垢版2020/07/28(火) 23:41:08.03ID:???
更新してなかった。
無事解決しました。ありがとうございます。
0449NAME IS NULL垢版2020/08/09(日) 19:07:36.73ID:p4Bp2EQ0
例えばWIKIPEDIAとかFACEBOOKや5チャンネルの新規スレッド作成みたいに、自動でページが作られる ようにするにはmysqlなんかのデータベースが必要と聞きました。具体的にどうすればいい?
0450NAME IS NULL垢版2020/08/09(日) 19:46:08.73ID:???
>自動でページが作られる ようにする

これはWebの作りとしてそうしているから
データベースは必須という訳ではない。あれば楽だと言う程度

多分PHPスレで聞いている方だと思うけど、まずWebの仕組みを理解してみよう
リクエストにはGETとPOSTがあり、
レスの投稿や新規スレ作成の要求は、POSTリクエストを使う
常にそうだとは言わないが、大体そうやるのが普通

新規スレ作成のPOSTリクエストを受けとったサーバーは、
POSTで送られてきた内容に応じて、情報をファイルやDBのレコードとして作成する

その後、アクセスしてきたユーザーに対してWebは、
作成したデータに応じて、新規スレの表示やら、新規レスの表示やらを行う
0451NAME IS NULL垢版2020/08/10(月) 06:39:49.20ID:???
「mysqlなんかの」のところにどんだけの意味が含まれてんのかね
ただのデータベースの枕詞だったらヤバイ
Wikipediaを運営するとしてデータベースをAccessで作ったら死ぬぞwww
0452NAME IS NULL垢版2020/08/10(月) 08:31:38.35ID:SIUW9diI
>>450
そうそう、phpすれで聞いてた人です。
「自動でページを作られるようにする」をデータベース
使わずにする方法のurlあったら教えてください
0453NAME IS NULL垢版2020/08/10(月) 11:08:56.12ID:???
そんなの何をしたいかによるでしょ
自動で作ること自体が目的なら適当に検索すれば出てくるでしょ
0454NAME IS NULL垢版2020/08/10(月) 21:44:53.66ID:YrlnoJZj
>>453
それが検索しても出ないんですよ....
0455NAME IS NULL垢版2020/08/10(月) 21:44:53.98ID:YrlnoJZj
>>453
それが検索しても出ないんですよ....
0456NAME IS NULL垢版2020/08/11(火) 08:53:21.86ID:???
>>454
何て検索したの?
今まで検索した検索ワードを全部書いて
0457NAME IS NULL垢版2020/08/11(火) 22:59:48.98ID:s+tQYz5h
php自動ページ生産
php新規ページ作成
php mysql url
phpurl書き換え
データベースurlクエリとは
データベースurl書き換え

ひとつ気になる検査結果を見つけたのですが、あまりよくわかりませんでした
https://teratail.com/questions/14413
0458NAME IS NULL垢版2020/08/11(火) 23:51:40.04ID:???
PHPもデータベースも、あんまり関係なさそう。
要するに、そういうもののつくりかたやろ?

プログラムのことをほとんど知らないのなら、直接的な答をてっとりばやく探そうとせずに、ゆっくり基本的なところから調べながらやっていくのがええんちゃう?

急ぐなら、人に頼んだほうが。必要なら金を払って。
0459NAME IS NULL垢版2020/08/11(火) 23:59:43.46ID:???
>>457

「仕組みとしては新しいページを作るというより、アクセスされたURLに応じてデータベースから取得した情報をテンプレートに埋め込んでるだけです。 」

そのURLに書いてるけど、↑これの意味わからない?
0460NAME IS NULL垢版2020/08/12(水) 00:09:47.07ID:???
>>457
その検索ワードは明らかに全部ピント外れ

多分やりたい事はそんな一般的な事じゃなく
掲示板作りたい、とか
Wikiみたいなのを作りたい、とか
具体的なイメージがあるんだろう

だから、それに沿って、
最初に何を表示すれば良いか、から始め、
表示内容を書き換えたり、追加したり、削除するにはどうしたらいいか
次に新しいページを追加するにはどうしたら良いか、なり
コメント書いてもらう方法を考えたり、
そういう一つ一つを順に実装していけば良いと思う

具体的なイメージがないなら、それは問題外って感じになるが
0461NAME IS NULL垢版2020/08/28(金) 23:36:23.47ID:XlBIZWe+
トランザクションとインデックスについて教えてください。
あるトランザクションAで InnoDB のテーブルに行の追加削除を行っている最中、別のトランザクションBでそのテーブルを参照したときに古い内容が参照できている時、
トランザクションBではそのテーブルに張られたインデックスは使えるのでしょうか。

また少し違う質問ですが、
そのテーブルはレコード数が非常に多くインデックスの更新にも結構時間がかかるのですが、そのようにインデックスが更新されてる最中に別のトランザクションのそのインデックスを使うような参照はどうなりますか。
更新が終わるまで待たされるんですかね?
0462461垢版2020/08/29(土) 00:34:04.50ID:???
実験してみたところだと、あるトランザクションでインデックスが更新されても、別のトランザクションでそのインデックスは使われるようですね。
ただ、ちょっと遅いみたいです。
インデックスが無い状態で 20秒かかる集計はインデックスがあると 2秒で終わりますが、別トランザクションでインデックスが更新されると 3.5秒かかるようになります。
トランザクションを抜けてバージョンが揃うと、また 2秒で終わるようになる模様。

あと、インデックスは更新が完了するまで使用は待たされるっぽいですね。
複数インデックスが張られてる場合は、使おうとしてるインデックスの更新が完了した段階で使えるようです。
0463NAME IS NULL垢版2020/08/29(土) 00:48:04.29ID:???
>>461
>トランザクションBではそのテーブルに張られたインデックスは使えるのでしょうか。
使える

>更新が終わるまで待たされるんですかね?
待たされない

もしインデックスの更新というのがDROP後のCREATE INDEXのことを指してるなら
Online DDLのやり方を調べれば良い
0464NAME IS NULL垢版2020/08/29(土) 00:50:54.02ID:???
>>462
遅くなるのはインデックスだけでなくデータのあるテーブル(クラスターインデックス)のほうも見て
undo logを使って古いバージョンのデータを持ってこないといけないから
0465NAME IS NULL垢版2020/09/04(金) 08:50:16.54ID:s9GkkPSd
MySQL8.0.18から最新の8.0.21へバージョンアップ後、
動作確認が取れたので8.0.18へバージョンを下げたらsystemctl start mysqlで起動しなくなった。
同じ人居ますか?
0466NAME IS NULL垢版2020/09/04(金) 10:20:59.38ID:???
んなことするヤツはおらんやろー。w
0467NAME IS NULL垢版2020/09/04(金) 11:33:21.28ID:???
Mysql 5.7 CentOS7

本番系 Master-Slaveの2台構成、グローバルトランザクションID有効
開発系 シングル構成、グローバルトランザクションID無効

この時に、本番系で取得したmysqldumpのファイルを開発系に入れようとするとgtid_mode=onにしろと叱られます
諸事情で設定変更できないので、mysqlクライアントの設定で回避する、またはダンプファイルを修正して回避する方法ってないでしょうか
0468NAME IS NULL垢版2020/09/04(金) 23:57:24.47ID:???
まずはその諸事情をどうにか解消する
0469NAME IS NULL垢版2020/09/07(月) 18:57:53.47ID:???
テーブルが破損したんで、repqir tableってやりました
これで復旧したテーブルは元の正常な状態になっていることが保証されているものなのでしょうか?
0470NAME IS NULL垢版2020/09/07(月) 20:41:17.04ID:???
「保証」はムリやろ。。。
0471NAME IS NULL垢版2020/09/14(月) 11:59:06.74ID:h0EsofcD
win10にmysql8入れたんですがmysql shellで見ると文字コードがなんかおかしい症状あれなんでしょう?
0472NAME IS NULL垢版2020/09/14(月) 12:37:27.69ID:???
文字コードがおかしいと思うならデータ自体のエンコーディングと表示に使ってるエンコーディングを確認しろ
0473NAME IS NULL垢版2020/09/20(日) 22:41:41.30ID:yX8GdXVo
mysql.sys を消してしまいました...
あれ消すとどうなるんですか??
0475NAME IS NULL垢版2021/01/09(土) 16:00:06.08ID:???
8がGAになってからもうすぐ3年だけど、8.1?9?の話って全く出てこないな
次期バージョンはどうなってんの?
0476NAME IS NULL垢版2021/02/01(月) 07:59:34.16ID:pFhdVy9B
>>475
なんで次期バージョンが気になるの?
0477NAME IS NULL垢版2021/02/01(月) 11:22:24.36ID:???
>>476
オラクルに見捨てられたって心配にならん?
0478NAME IS NULL垢版2021/02/03(水) 07:01:30.83ID:1CRySpRq
>>477
ならんよ ついこないだ23でたし、OCIでも使える新しいストレージエンジンも出たし
0479NAME IS NULL垢版2021/02/04(木) 02:18:57.36ID:27h2NAeg
むしろオラクル社が仕切るようになって、まともに進化してるよね。
0480NAME IS NULL垢版2021/02/04(木) 05:05:06.10ID:jdcUpT18
8系出たときはやばいバグだらけだったけど今は少しマシ
0481NAME IS NULL垢版2021/02/17(水) 22:57:56.95ID:ZmGYM9U7
dumpについて2つ質問です

1.dumpの際に別テーブルの条件を使ってdump対象を絞ることはできますか?
例:従業員テーブルをdumpする際月給テーブルの給料が30万円以上の従業員のみdump

2.dumpの際にIllegal mix of collationが発生しているのですが、dump自体は成功しているようです
このエラーはどんな影響がありどう対応可能でしょうか?

mysql 8.0.13
0482NAME IS NULL垢版2021/02/19(金) 08:17:34.60ID:???
wordpressが動いているLAMP環境でmysqltunerをすると
クエリーキャッシュを無効にせよと出るのですが、
クエリーキャッシュって無いよりあったほうが良いのにどうしてこのように判定されてしまうのでしょうか?
それにも関わらず query_cache_size (> 64M) と出ているのはどういう意味なのでしょうか?

設定している値
query_cache_type=1
query_cache_size=64M
query_cache_limit=1M

----- Recommendations------
query_cache_size (=0)
query_cache_type (=0)
query_cache_size (> 64M)
0483NAME IS NULL垢版2021/02/19(金) 15:09:43.31ID:???
いや逆に、クエリキャッシュがあったほうがいいと思うのはなぜ?

個人的にもあてにしないし、そんなメモリがあればほかに使う。
だが、自分であったほうがいいと思うなら、つけとけばええんちゃう?
0484NAME IS NULL垢版2021/02/27(土) 13:30:38.88ID:???
更新多いテーブル/DBだとクエリキャッシュなんて効くこと全く無いし有効にしたことないな。
レガシーな機能だしさっさと無効にしたほうが良い。
0485NAME IS NULL垢版2021/02/27(土) 17:31:45.13ID:???
>それにも関わらず query_cache_size (> 64M) と出ているのはどういう意味なのでしょうか?
これはある種のバグだと思うけどな
0486NAME IS NULL垢版2021/02/27(土) 17:54:42.19ID:???
mysqlのクエリキャッシュの実装はいろいろと問題が多くて大半のケースで無効にしたほうがよい
実装の問題に取り組むのを諦めたから8.0では機能自体が削除された

有効にすることでデメリットをメリットが上回るケースもあるにはあるけど
その判断をするためにはクエリキャッシュがネガティブな影響を与えるケースに該当するかどうかを
一つ一つ全部調べた上にキャッシュ利用有無によるパフォーマンスの差をクエリ別に計測して
管理負荷やDeprecatedな事も加味しないといけない

つまり、その手間を書けるくらいなら他のところでチューニングしたほうが効率がいいってこと
0487NAME IS NULL垢版2021/02/27(土) 20:22:50.63ID:Mr+7agrR
MySQLはファンクションの仕様も辻褄が合わなくなっているし、トランザクション導入時の仕様が曖昧すぎるんだよな。
0488NAME IS NULL垢版2021/02/27(土) 20:24:26.99ID:???
クエリキャッシュを無効にして1週間、
読み取り線用のwordpressは特に何も変わっていないようです。

mysqltunerの
[OK] InnoDB Read buffer efficiency: 99.99% (35003253 hits/ 35005219 total)
[!!] InnoDB Write Log efficiency: 19989.88% (120539 hits/ 603 total)

上はキャッシュみたいなものが効いていると考えて良いのでしょうか?
下は何でしょう、警告みたいな感じですが20000%とは凄い感じです。
0489NAME IS NULL垢版2021/02/27(土) 21:27:25.39ID:???
まず脳みそのチューニングが必要ってこと
0490NAME IS NULL垢版2021/02/27(土) 22:14:33.30ID:32+QB1id
/1614426907/
0492NAME IS NULL垢版2021/03/12(金) 11:26:21.87ID:???
>>488
別に無視してても問題ないように読めるな。

- IHMO, innodb_buffer_pool_size is the main parameter having the greatest impact on this ratio.
- In fact, InnoDb write Log Effiency is not a major tuning items regarding innodb log file size and innodb buffer pool size.

https://github.com/major/MySQLTuner-perl/issues/291
0493NAME IS NULL垢版2021/03/15(月) 09:00:10.19ID:???
mariadb 10.5をcentos7に入れて
mysql_secure_installationでrootパスワードを変更
#mysql
だけで入れてしまうのが不安なんだけど
一般ユーザでは $mysql -uroot -pで無いと入れないので安心したけどそういう仕様?
ソケット接続はnoにしてます
0494NAME IS NULL垢版2021/03/15(月) 10:13:27.05ID:8bMPGxFo
OSのrootユーザーを安易に使いすぎだろ
0495NAME IS NULL垢版2021/03/15(月) 11:37:05.04ID:???
rootがmysqlプロセスをkillできることについてはどう思うのかな?w
0496NAME IS NULL垢版2021/03/15(月) 11:49:05.59ID:???
>>495
なんとも思わないけど、どういう主張?
実際どこまでやるかはともかく特定の権限だけを持つアカウントを作って使い分けるなんて当たり前の話だと思うけど。
0497NAME IS NULL垢版2021/03/15(月) 15:51:08.56ID:???
えらく難しい謎かけだな
0498NAME IS NULL垢版2021/03/15(月) 18:17:28.99ID:???
ありゃ?
今、コマンドだけ打ったら入れなくなったわ。
# mysql
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

何度か同じ経験あるからインストール直後はソケットファイルが作られて通るみたい。
0499NAME IS NULL垢版2021/03/22(月) 20:44:57.37ID:???
root権限ないレンタルサーバーでMySQL のバージョン上げる事ってできんよね?
0500NAME IS NULL垢版2021/04/07(水) 19:47:13.49ID:???
提供されているバージョン以外を使うにはインストール権限がないと無理だろう
0501NAME IS NULL垢版2021/04/23(金) 14:50:56.62ID:???
ライセンスに関して

社内システムで外部に公開してない様なシステムはCommunity EditionでOKだよね?

無料でシステム構築したいから
0504NAME IS NULL垢版2021/04/30(金) 01:29:20.27ID:B3e4mWr2
c++はboostお手本に真似すればだいたいうまくいくけど
SQLのお手本ってどこにあるの?
Table 名でフラグ判定するような変なルールでTable量産したら速くなったけど
読めないからわけわからん
0505NAME IS NULL垢版2021/04/30(金) 01:38:18.97ID:B3e4mWr2
Table名が
(主要要素を現すアルファベット1文字)(特性を現す数字)(補助属性を表すアルファベット小文字1文字)
みたいな
Q12nH3k
という感じのTable大量に作ってTable名の文字列処理がメインみたいな変なことになってる
0506NAME IS NULL垢版2021/04/30(金) 02:44:24.09ID:???
それはもう、SQLはぜんぜん関係ないやろ!w
まあ、速くなったんならええやん?
0507NAME IS NULL垢版2021/04/30(金) 02:44:42.42ID:???
Table名なんて普通のユーザーが操作するわけじゃないから構わないかも知れないが
ちゃんとドキュメント残して置かないと、引き継ぐ奴が死ぬかも知れん
0508NAME IS NULL垢版2021/04/30(金) 04:29:17.93ID:B3e4mWr2
属性の検索がselectでできない
しかし全部のデータを1つのTableに入れると遅くて使えない
0509NAME IS NULL垢版2021/04/30(金) 12:22:35.03ID:???
>>505
おれもそういうのは嫌いじゃないが、大体データの種別毎に xxx1 xxx2 みたいな種別コードが付くくらいに留めてる。
テーブルが小さくなってインデックスの更新も速くて悪くないと思うが、そこまで細分化した構造はメンテが面倒そうねw
まあうまく合えばパーティションを使う所かもしれない。
0511NAME IS NULL垢版2021/04/30(金) 14:24:27.00ID:???
>>501
外部公開でも商用利益得る様なシステムで無ければCommunity Editionで良い
0516NAME IS NULL垢版2021/04/30(金) 17:10:07.97ID:???
外部公開しない社内イントラシステムではCommunity Editionで良い
0517NAME IS NULL垢版2021/04/30(金) 17:30:47.30ID:???
>>515
これ分かり易いね
これで十分理解出来る
0518NAME IS NULL垢版2021/04/30(金) 19:11:45.16ID:???
成果物(≠サービス)を利用する者は、ソースを利用する権利もあわせ持つ、というだけなのに。。。
0519NAME IS NULL垢版2021/05/01(土) 10:34:32.51ID:???
外部公開してるECサイト運営のDB部分はMySQL Standard Edition
公開しないイントラネットのDB部分はCommunity Edition

これで安くOracleのサポート受けながら運営出来る
0520NAME IS NULL垢版2021/05/01(土) 10:39:53.68ID:???
一人だけドリンクバーを注文して、連れ全員でドリンクバー飲みまくるタイプ?
0522NAME IS NULL垢版2021/05/01(土) 11:22:28.39ID:???
>>520
わざわざシステム一部のECサイト運営の為にDB全体を商用ライセンスにする必要無いよ
適材適所だから
0523NAME IS NULL垢版2021/05/01(土) 12:40:38.48ID:???
理論上て何だよw
Oracleを騙してサポート契約してないDBのサポートを受けるなら
見つかりにくいというだけでライセンス違反だから
0524NAME IS NULL垢版2021/05/01(土) 13:03:33.50ID:???
>>523
サポート受けるのは商用ライセンス部分だけだよ
だから問題無い
Community Editionの部分は元からサポート無いでしょ
0525NAME IS NULL垢版2021/05/01(土) 14:37:07.80ID:???
>>519
サイトシステムを外販しなければGPLで可。
公式サポートが欲しいならMySQLなんか選ぶな!
0526NAME IS NULL垢版2021/05/01(土) 14:43:33.65ID:???
>>524
それなら「サポートを受けたい箇所はMySQL Standard Edition」とでも書けばいいだけ
サイトを外部公開するかどうかとサポートが必要かどうかは関係ないだろ
0527NAME IS NULL垢版2021/05/01(土) 14:51:55.11ID:???
>>525
ECサイトで売上上げてるのに商用ライセンス不要なのか?
0528NAME IS NULL垢版2021/05/01(土) 16:06:32.94ID:???
不要だよ
「商用ライセンス」という呼び方が良くない
0529NAME IS NULL垢版2021/05/01(土) 16:23:48.98ID:???
システムそのものを売り物にしたいときにライセンスがいるじゃなかった?
0530NAME IS NULL垢版2021/05/01(土) 16:30:12.48ID:Jo2S8ah6
ライセンスめんどくさいならPostgres でいいかなあ
そんな速度違わないし
0531NAME IS NULL垢版2021/05/01(土) 17:15:04.90ID:???
>>527
GPLの概説でええから読め!
「利益」「売上」みたいな言葉は一切出てこんから。
0532NAME IS NULL垢版2021/05/02(日) 08:42:21.42ID:???
>>530
PostgreSQLは無尽蔵にレコード増えるからダメだよ
0533NAME IS NULL垢版2021/05/02(日) 09:41:26.49ID:???
>>529
受託開発する場合どうなるの?
商用で開発して納品はCommunity Editionで納品すんの?
0534NAME IS NULL垢版2021/05/02(日) 11:35:43.54ID:???
GPLを理解できないやつは商用ライセンスが必要
0535NAME IS NULL垢版2021/05/02(日) 11:36:39.48ID:???
Postgresは無尽蔵にレコード増えるとか言ってるやつも
サポート無しでDBMSを運用すべきじゃないので商用ライセンスが必要
0538NAME IS NULL垢版2021/05/05(水) 17:41:56.87ID:BLhuxSA1
バイナリログが無限増殖するのってPostgresも同じなの?
設定変えるだけでいけるとは思うけど
0539NAME IS NULL垢版2021/05/05(水) 18:26:14.36ID:???
>>537
一般的な受託開発は開発したソフトウェアを顧客にライセンス供与して使わせるわけじゃないからOEMライセンスは必要ない

ライセンス供与して使わせる自社パッケージがMySQLを使ってる場合にライセンスをGPLにしたくなければ必要
0540NAME IS NULL垢版2021/05/06(木) 14:23:45.73ID:???
VB.NETからMySQLにアクセスしてシステム構築を予定してるが
単純にMySQL Connector使って良いのだろうか?
ADO.NETバージョンとODBCバージョンとどっちが良いのだろうか?
0542NAME IS NULL垢版2021/05/09(日) 13:31:56.10ID:???
基本的に社内運用システムではMySQLで問題無い
BSDライセンスのPostgreSQLの方が何も考え無くて良いが物理レコードの保持仕方がOracle,MySQLと違う
0543NAME IS NULL垢版2021/05/18(火) 12:22:41.78ID:???
>>539
じゃ受託開発はCommunity EditionでやってCommunity Editionのまま納品して良いんだね?
0545NAME IS NULL垢版2021/05/18(火) 14:38:16.07ID:???
>>544
受託元がパッケージ化して売り物にしないならCommunity Editionで良いんだよね?
0546NAME IS NULL垢版2021/05/18(火) 15:32:59.56ID:???
>>543
そりゃだめだろ
なんでMySQLまで納品しようとするの?
0547NAME IS NULL垢版2021/05/18(火) 16:26:42.39ID:???
>>546
ああ、なるほど
現場でMySQLでセットアップすれば良いんだな
0548NAME IS NULL垢版2021/05/18(火) 17:21:09.31ID:???
セットアップをどこでやるかの問題じゃないぞ

「うちはそんなライセンス契約に同意した覚えはない」
「君たちが勝手に非商用版をインストールしたんだから責任は君たちにある」
てなる

費用が発生しなくても有償のDBMS使うのと同じ線引が必要
ビジネス取引の一般常識なので上司に聞くといい
0549NAME IS NULL垢版2021/05/18(火) 18:59:25.98ID:???
>>548
非商用版を使う同意を得てるかどうかか、、
GPLだからソース公開する必要は無いよな
受託元で使う社内システムだし
0550NAME IS NULL垢版2021/05/18(火) 19:22:46.54ID:???
>>549
同意というか、その前のちゃんとした話ができてんのかね?
受託ならとか社内ならとかヘンに「ケース」にして決めつけずに、先方と理屈を共有したほうが。

なお、受託元には、ふつうにアクセスできる形でソースを公開(提供)する必要はあるぞ。
0551NAME IS NULL垢版2021/05/18(火) 19:59:18.75ID:???
>>550
>>同意というか、その前のちゃんとした話ができてんのかね?

一応、出来てる

>>なお、受託元には、ふつうにアクセスできる形でソースを公開(提供)する必要はあるぞ。

そのソースを公開したく無ければ商用版にする必要有るって事ですか、、
0552NAME IS NULL垢版2021/05/18(火) 20:23:28.40ID:???
>>550
受託元は受託してる側を指す言葉だと思うんだが
委託元 or 発注元のことを言ってる?
0553NAME IS NULL垢版2021/05/18(火) 20:39:54.22ID:???
あー。
なんか落ち着かないな、と我ながら思ってた。w
受託はあんまり先とか元とか言わんよな。

× 受託元
○ 発注元、納品先
0554NAME IS NULL垢版2021/05/20(木) 09:59:19.43ID:???
発注元がソース公開したくない→商用ライセンス購入
発注元がソース公開しても良い→Community EditionでOK
0556NAME IS NULL垢版2021/05/20(木) 12:14:04.47ID:???
定期的にそのゴミみたいな増田を根拠にあげるのやめろよ
0558NAME IS NULL垢版2021/05/20(木) 14:39:26.31ID:???
ライセンスを理解できない情弱は金払えってこと

そこまでしてMySQLにこだわる必要は全くないんだが
ペチパーには他の選択肢がないんだろうな
0559NAME IS NULL垢版2021/05/22(土) 10:05:33.42ID:???
PostgreSQLとMySQL組み合わせて使う方が良いかもね
MySQLの商用ライセンス使うかの基準はソース公開するかしないかになる
0560NAME IS NULL垢版2021/05/22(土) 11:35:38.36ID:???
>>559
× ソース公開
○ 納品時にソースも提供

MySQL 系で「ソース公開」は、言葉が強すぎて、あんまりよろしくないな。
まともに理解できないヤツばっかりやし。
0562NAME IS NULL垢版2021/05/23(日) 11:12:05.52ID:???
https://sp.ch.nicovideo.jp/nie/blomaga/ar575121
このサイトの方が分かり易い

*外部に公開し、対価を得る目的でMySQLを利用したシステムを公開する場合、ライセンス料が必要

Webシステムで対価得る場合は、これに当たる
0563NAME IS NULL垢版2021/05/23(日) 11:42:51.26ID:???
>>562
めちゃくちゃ間違えてるが
これに沿っておけばライセンス違反になることはないだろうな
0564NAME IS NULL垢版2021/05/23(日) 12:04:09.22ID:???
>>563
MySQL作ったシステム全体で対価得る場合だからな
一般企業のWebシステムはGPLに沿ってソース公開してればCommunity Editionで良い
そのソース公開(主に社員)が嫌なら一番安いStandard Edition買っておけば良い
0565NAME IS NULL垢版2021/05/23(日) 12:18:47.06ID:???
>>564
GPLは営利・非営利関係ないし
自社システムのソースを社員に公開する義務もない

その前にお前はライセンスとは何かを理解してないから
社内・社外でライセンスの話はしないほうがいいぞ
0566NAME IS NULL垢版2021/05/23(日) 12:22:04.52ID:???
>>564
同一法人内ならいらんやろ。
社員が社内でどうするつもりや?w
0567NAME IS NULL垢版2021/05/23(日) 13:22:27.76ID:???
>>562
>>*外部に公開し、対価を得る目的でMySQLを利用したシステムを公開する場合、ライセンス料が必要

Webシステムパッケージの事だよな
0568NAME IS NULL垢版2021/05/23(日) 14:05:43.22ID:???
結論

GPLを理解できないやつにCommunity Editionの選択肢はない
Postgresにするか商用ライセンスを買え
0569NAME IS NULL垢版2021/05/24(月) 13:22:26.36ID:???
基本的にCommunity Editionで良いよ
ECシステムで使っててもGPLには売上上げてるとか無関係
0570NAME IS NULL垢版2021/05/24(月) 13:51:11.07ID:???
なんだよ「Community Editionで良い」ってw
そんなんケースバイケースだろ
0571NAME IS NULL垢版2021/05/24(月) 13:53:31.34ID:???
具体的に、どういうケースで?
0573NAME IS NULL垢版2021/05/24(月) 15:04:23.63ID:???
>>572
バックエンドにMySQLを利用するソフトウェアをGPL以外のライセンスで頒布する、または、GPLライセンス使用が認められない状況下でMySQLを使用する場合に商用ライセンスが必要

つまりはソース公開したく無い場合か出来ない場合だけだろ
0574NAME IS NULL垢版2021/05/24(月) 15:34:18.56ID:???
https://ja.stackoverflow.com/questions/22776/mysql%E3%82%92%E5%95%86%E7%94%A8%E3%81%A7%E5%85%AC%E9%96%8B%E3%81%99%E3%82%8Bweb%E3%82%A2%E3%83%97%E3%83%AA%E3%81%AE%E3%83%90%E3%83%83%E3%82%AF%E3%82%A8%E3%83%B3%E3%83%89%E3%81%AB%E5%88%A9%E7%94%A8%E3%81%99%E3%82%8B%E9%9A%9B%E3%81%AEgpl%E9%81%A9%E7%94%A8%E7%AF%84%E5%9B%B2%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6

そもそもGPLは大雑把に説明すると「バイナリーを入手した人にソースコードも提供する義務を負う」ものです。

社内システムはバイナリー入手者はシステム納品先
0576NAME IS NULL垢版2021/05/24(月) 18:24:09.52ID:???
>>575
理解できてないところを指摘しなければ意味がない。
要は、ただの嫌がらせなんやろ?w
0577NAME IS NULL垢版2021/05/25(火) 16:54:49.93ID:???
>>562で良いよ
怪しければStandard Editionにすれば良い
0578NAME IS NULL垢版2021/05/25(火) 19:18:31.55ID:???
>>577
GPLには、対価がどうとかまったく関係ない。
0579NAME IS NULL垢版2021/05/26(水) 15:05:15.62ID:???
>>578
GPLは対価関係無い

>>562の外部に公開し、対価を得る目的でMySQLを利用したシステムを公開する場合、ライセンス料が必要

は間違い
0580NAME IS NULL垢版2021/05/26(水) 16:56:30.00ID:???
>>579
とりあえずCommunity Editionで実行してOracleに確認→商用ライセンス必要ならStandard Editionに変更すりゃええ
0581NAME IS NULL垢版2021/05/26(水) 18:12:30.08ID:???
>>580
> Oracleに確認
ボッタクリ商店に聞いたら、そりゃあ払う方向に答えるやろ。w
情弱が損するパターン。
0584NAME IS NULL垢版2021/05/26(水) 22:10:17.78ID:???
オラクルは「商用ライセンスは不要」とは絶対に回答しない

それすら分からないやつはMySQL使ったらダメだって
0585NAME IS NULL垢版2021/05/26(水) 22:34:33.15ID:???
>>584
さすがに「絶対」てこともないやろ。
どこをどう考えてもGPLでいいときは商用ライセンスを推してこんはず。

サポートを売ってくるかもやが。w
0586NAME IS NULL垢版2021/05/26(水) 23:11:02.80ID:???
>どこをどう考えてもGPLでいいとき

結構厳しい条件にならないか
0587NAME IS NULL垢版2021/05/26(水) 23:23:42.73ID:???
>>585
>どこをどう考えても

まさかタダでやってくれるとか思ってないよね?
0588NAME IS NULL垢版2021/05/27(木) 10:14:34.77ID:???
導入前に入念にOracleに確認する必要有る
まあ、そこで商用ライセンスに誘導される可能性は高いがw
基本的にGPL適用ならCommunity Editionで良い
0589NAME IS NULL垢版2021/05/27(木) 10:28:33.08ID:???
>>586
MySQL の使われかたを考えたら、むしろGPLで充分なほうが多そうだがなあ。
0590NAME IS NULL垢版2021/05/27(木) 11:24:28.51ID:???
>>588
>基本的にGPL適用ならCommunity Editionで良い

「基本的に」じゃだめなんだよ
「完全に」GPLに従ってないとライセンス違反

細かい例外もすべてチェックしてそれが厳守され続けることを担保しないといけない
もちろんOracleはそんな相談にはのってくれない
0591NAME IS NULL垢版2021/05/27(木) 15:09:58.80ID:???
>>590
>>もちろんOracleはそんな相談にはのってくれない

それが問題
通常はOracleがテキパキ答えてくれるモノと思ってるからなあ
0592NAME IS NULL垢版2021/05/27(木) 15:29:40.09ID:???
Oracleに相談しないとGPLv2に準拠してるかどうかを判断できないようなやつは
Community Edition使う資格ないから
0595NAME IS NULL垢版2021/05/28(金) 11:00:37.27ID:???
https://cloudear.jp/blog/?p=896

コピーレフトは商用利用には使えない?よくある勘違い

答えはノーです。

Webサービスだったらユーザー全員にソースコード公開しなくちゃいけないのでは?

答えはノーです。

ソースコードを公開する義務があるのはソフトウェア自体の配布先に対してのみです。WebサービスのユーザーはたしかにWebサービスを利用していますが、ソフトウェアはサーバーにしかなく、ユーザーにソフトウェアを配布しているわけではないからです。
0596NAME IS NULL垢版2021/05/28(金) 11:34:27.12ID:???
>>595

AWS以外でMySQLを使いたいけども以下のような要件がある場合はライセンス料を支払うしかないと思いますね。

・サポートを受けたい
・ナレッジやツールが使いたい
・責任をOracleに(ry
0597NAME IS NULL垢版2021/05/28(金) 12:19:01.13ID:???
>>596
「ライセンス」ではなく、「サポート」を買うべき。
0598NAME IS NULL垢版2021/05/28(金) 12:42:29.95ID:???
>>597
>>サポートを買うべき

そういう場合、商用版が必要になる
0599NAME IS NULL垢版2021/05/28(金) 15:05:12.62ID:???
どうしてもOracleのサポートが欲しければ、やな。
大金に見合うレベルなんか?

それに、「サポート」を売ってるところはほかにもあるやろ。
0601NAME IS NULL垢版2021/05/28(金) 21:46:27.36ID:???
>>595
>Webサービスだったらユーザー全員にソースコード公開しなくちゃいけないのでは?
>答えはノーです。
これは正しいが・・・

Webサービスだったらユーザーにソースコードを公開しなくてもいい?
答えはノーです。
公開しなくてもいい場合もあれば公開しなければいけない場合もあります。

よくある勘違い
0602NAME IS NULL垢版2021/05/29(土) 00:09:31.60ID:???
>>601
詭弁。
Webサービスかどうかは関係ないが、そっちを強調するのは悪意ある誘導。
0603NAME IS NULL垢版2021/05/29(土) 00:17:37.90ID:???
あんまり強調している様な印象は受けないけどな
そう受けとる人もいるって事か
0604NAME IS NULL垢版2021/05/29(土) 00:30:56.46ID:???
>GPL ライセンスのライブラリを使って業務アプリケーションを完成させたとします。するとその業務アプリケーションは GPL ライセンスとなります

これもよくある勘違い
0605NAME IS NULL垢版2021/05/29(土) 00:38:33.51ID:???
本家のサイトを見ればいいのに
間違いだらけの個人の意見が書いてあるサイトを見て
それが正しいと思っちゃう人たちって何なんだろうね
0606NAME IS NULL垢版2021/05/29(土) 07:59:28.66ID:???
https://i.imgur.com/LFBhs7W.png
このようなデータから火の攻撃UPが2つ以上ついてるデータを選ぶにはどうすればいいですか?
なるべく下記のような総当たり的な記述は避けたいです
(属性1="火" and 効果1="攻撃UP" and 属性2="火" and 効果2="攻撃UP") or ... or (属性3="火" and 効果3="攻撃UP" and 属性1="火" and 効果1="攻撃UP")
0607NAME IS NULL垢版2021/05/29(土) 12:55:36.46ID:???
>>606
MySQLには他のDBのようなpivot系の関数がないのでSQLだけでやるなら自分でpivot/unpivotをやるしかない
DB設計を考え直したほうがいいような

SELECT 番号, 属性, 効果, count(*) 件数
FROM (
SELECT 番号, 属性1 属性, 効果1 効果 from スキル効果
union all
SELECT 番号, 属性2 属性, 効果2 効果 from スキル効果
union all
SELECT 番号, 属性3 属性, 効果3 効果 from スキル効果
) unpivoted
WHERE 属性 = '火' AND 効果 = '攻撃UP'
GROUP BY 番号, 属性, 効果
HAVING count(*) > 1
0608NAME IS NULL垢版2021/05/29(土) 14:43:28.67ID:???
CASE式でがんばった場合

SELECT *
FROM スキル効果
GROUP BY id
HAVING SUM(
CASE 属性1 WHEN '火' THEN
CASE 効果1 WHEN '攻撃UP' THEN 1 ELSE 0 END
ELSE 0 END
+ CASE 属性2 WHEN '火' THEN
CASE 効果2 WHEN '攻撃UP' THEN 1 ELSE 0 END
ELSE 0 END
+ CASE 属性3 WHEN '火' THEN
CASE 効果3 WHEN '攻撃UP' THEN 1 ELSE 0 END
ELSE 0 END
) > 1

しんどいな
0609NAME IS NULL垢版2021/05/29(土) 15:38:22.59ID:???
>>606
正規化して、別のテーブルに分離する。
それから、SELECT COUNT() GROUP BYする。
0611NAME IS NULL垢版2021/06/07(月) 20:17:19.28ID:???
>>606
もう見てないかな
CASE WHEN (属性1, 効果1) = (‘火’, ‘攻撃UP’) THEN 1 ELSE 0 END +
CASE WHEN (属性2, 効果2) = (‘火’, ‘攻撃UP’) THEN 1 ELSE 0 END +
CASE WHEN (属性3, 効果3) = (‘火’, ‘攻撃UP’) THEN 1 ELSE 0 END >= 2
0612NAME IS NULL垢版2021/06/07(月) 21:36:49.95ID:???
>>611
ANDの代わりに(属性1, 効果1) = (‘火’, ‘攻撃UP’)って書けるの標準?
0614NAME IS NULL垢版2021/06/09(水) 20:27:43.73ID:uQzzzKr1
/var の一貫性エラーみたいの出て 
fsck -y した後のデータベースの中見は
どのくらい信用できるものでしょうか?
こういうことないようにバックアップするのが
いいのでしょうけどしてなかった
0617NAME IS NULL垢版2021/06/11(金) 15:00:13.52ID:???
刺激的な表現使うとアクセス数を稼げる
0618NAME IS NULL垢版2021/06/11(金) 15:03:40.07ID:???
宣伝に突っ込んでもしょうがないだろw
0619NAME IS NULL垢版2021/06/11(金) 15:33:30.43ID:???
OracleがOracle→MySQL移行を進めてるんだろ
0620NAME IS NULL垢版2021/06/11(金) 18:21:50.82ID:???
移行はすすめてない
Oracleの売れ行きが右肩下がりだから
JavaやMySQLで少しでもお金を取って売上の穴埋めをしたいだけ
0621NAME IS NULL垢版2021/06/12(土) 12:41:57.77ID:???
MySQLに有償サポートが必須な理由 => 金払ってくれないとオラクルが困るから
0623NAME IS NULL垢版2021/06/12(土) 13:27:39.41ID:???
>>618
内容自体は至極全うだと思うので、宣伝として損をしてるような。
「必須」じゃなくて、「推奨」とか「するべき」とかでよかったのに。
0625NAME IS NULL垢版2021/06/12(土) 14:54:27.16ID:???
バックエンドならCommunity editionで良いと言ってる人も
タイアップ広告だということに気づかない人も
どっちもどっち

「うわっ… 私のリテラシー、低すぎ…?」
0626NAME IS NULL垢版2021/06/12(土) 17:46:52.03ID:???
>>625
おまえの「リテラシー」が一番低いと思う。w
0627NAME IS NULL垢版2021/06/13(日) 11:15:40.83ID:???
>>622
ECサイトバックエンドはCommunity EditionでOKって事か
商用バージョンが必要だと思ったので良かった
0628NAME IS NULL垢版2021/06/13(日) 12:16:27.23ID:???
>>627
ECサイトかどうか、バックエンドかどうか、はライセンスに一切関係ない。
やりかたによって、セーフならセーフ、アウトならアウト。
0629NAME IS NULL垢版2021/06/13(日) 12:27:07.70ID:???
ライセンス理解できないやつは商用バージョンが必須
0630NAME IS NULL垢版2021/06/13(日) 17:55:04.18ID:???
推奨NGワード :「Community Editionで良い」
0631NAME IS NULL垢版2021/06/24(木) 12:51:49.20ID:???
商用ライセンスバージョンとCommunity Edition組み合わせて使う方法も有る
サポート受けれるし
0632NAME IS NULL垢版2021/07/04(日) 13:37:10.61ID:???
そもそもライセンス違反を判断するのは誰?
オラクル?
0634NAME IS NULL垢版2021/07/05(月) 14:57:06.09ID:???
オラクルから提訴されない限り裁判沙汰にはならないって事か
0636NAME IS NULL垢版2021/07/05(月) 17:01:48.17ID:???
試しにBSAに通報してみなよ
0637NAME IS NULL垢版2021/07/06(火) 02:37:09.42ID:???
ドキドキしている人、何人いますか?
0638NAME IS NULL垢版2021/07/07(水) 05:17:01.21ID:V2PcfTQj
主キーをUnix時間にしたい
しかし同じ時期に重複レコードあるせいでできない
時間が主キーじゃないから時間で検索するの遅くて仕方ない
0639NAME IS NULL垢版2021/07/07(水) 10:31:23.27ID:???
>>638
PKしか知らんのか?
ふつうにインデックスをつけたらええやろ。
0640NAME IS NULL垢版2021/07/07(水) 23:02:06.46ID:V2PcfTQj
1秒に10レコードぐらい追記されていくので
0641NAME IS NULL垢版2021/07/07(水) 23:05:32.18ID:???
プライマリーキーは重複を許さないので、無理です
0642sage垢版2021/07/08(木) 00:28:02.59ID:b1xNZXm5
UPDATEではなく、DELETE-INSERTを使うメリットは何でしょうか?
0644NAME IS NULL垢版2021/07/08(木) 23:49:44.48ID:???
>>642
AUTO_INCREMENTなカラムについて、新規にID値が割り当てられる。
0645NAME IS NULL垢版2021/07/09(金) 02:18:38.87ID:???
AUTO_INCREMENTに限らずPKを振り直す場合に
元のレコードをDELETEするか?
0646NAME IS NULL垢版2021/07/09(金) 21:16:02.54ID:???
メリットでもなんでもねえ
0647NAME IS NULL垢版2021/07/10(土) 17:08:23.53ID:hnpv+Swq
Long Long int がユニークキーだが
Long intが格納できる桁の最大なので
Long int 2列にユニークキーを格納してる
しかし2列合わせユニークキーでなおかつprimary key扱いにできるとうれしいやり方がわからない
0648NAME IS NULL垢版2021/07/18(日) 16:07:30.47ID:OIZ8Psb+
MySQLって、PRIMARY KEY(KEY_HIGH,KEY_LOG)のように2つのカラムのPK指定をTABLE CREATEに書くだけじゃダメなんか?
0649NAME IS NULL垢版2021/07/18(日) 17:02:26.43ID:???
別に問題ないよ
うまくいかないなら再現可能なSQLを出してくれ
0650NAME IS NULL垢版2021/07/30(金) 12:00:20.90ID:???
初心者です。質問させてください
2つのテーブルから重複したデータを抽出するにはどうしたらいいでしょうか?
先輩方ご教授お願いします。
0651NAME IS NULL垢版2021/07/30(金) 13:29:57.59ID:???
>>650
まず最初に「何をもって重複と呼ぶのか」(重複の定義)を明確にすることからはじめましょう
0653650垢版2021/07/31(土) 00:29:23.23ID:???
ありががとうございます。
自己解決しました。
0654NAME IS NULL垢版2021/08/10(火) 09:02:28.64ID:cIIi5aY7
>>642
ないです
0655NAME IS NULL垢版2021/08/15(日) 15:20:10.98ID:NLjdEINF
id と timestamp は単調増加の関係にあって
idに重複はないが timestampには重複がある
t1< timestamp < t2
のselectを効率的にするには何も考えずにインデックスを張るしかないのか?
0657NAME IS NULL垢版2021/08/15(日) 21:14:41.22ID:???
>>655
t1< timestamp < t2 にid関係なくね?

idとtimestampの関係性をDBMSが管理してるならそれを有効活用したいみたいな話?
0658NAME IS NULL垢版2021/08/16(月) 00:29:08.34ID:zNeW/iMV
タイムスタンプ項目を条件に検索している時点で変な設計。
0660NAME IS NULL垢版2021/08/16(月) 03:07:05.85ID:???
張るしかないのではないか
0661NAME IS NULL垢版2021/08/16(月) 16:11:45.88ID:???
>idとtimestampの関係性をDBMSが管理

それがインデックスさん
0662NAME IS NULL垢版2021/08/16(月) 17:08:22.78ID:???
あらたないみふめが登場!
0663NAME IS NULL垢版2021/08/16(月) 17:39:53.84ID:???
流石にインデックスは分かる
0664NAME IS NULL垢版2021/08/16(月) 19:02:02.33ID:???
>>663
ならば、>>661を説明して!w
異なるカラムとインデックスの関係性だぞ?
0665NAME IS NULL垢版2021/08/16(月) 19:22:31.93ID:???
共に単調増加ってのは、関係性ではないと思うが
0666NAME IS NULL垢版2021/08/16(月) 22:42:01.35ID:???
>>664
timestamp列にインデックス張ればそのリーフノードにはPKのid列の値が含まれる
つまりどのtimestampの値がどのidに紐づくかをインデックスが管理してる
0667NAME IS NULL垢版2021/08/17(火) 09:29:59.27ID:???
>>655
クラスタ化インデックスを使って単調増加するカラムの検索を追加インデックスなしで高速に検索できないだろうか。という趣旨の質問だろうか
0668NAME IS NULL垢版2021/08/17(火) 09:41:34.96ID:???
>>666
それは論理の飛躍があるやろ。
結果としての相関関係と混乱してるとゆうか。
0669NAME IS NULL垢版2021/08/17(火) 10:41:01.12ID:???
>>668
インデックスの仕組みを知らんかったんやな
勉強になってよかったじゃない
0670NAME IS NULL垢版2021/08/17(火) 10:47:57.99ID:???
id列もtimestamp列も更新可能なわけで
単調増加関数になることが保証されてるわけじゃない

仮に保証されてたとしてもインデックス無しでは
timestampからidを効率的に引けないから
結局インデックスを通して管理するか全スキャン
0671NAME IS NULL垢版2021/08/17(火) 11:05:52.89ID:???
>>665
x1 <= x2 なら f(x1) <= f(x2)となる関数fが単調増加
xがtimestampでf(x)がid
0672NAME IS NULL垢版2021/08/18(水) 00:59:58.59ID:???
そんな関数がもしもあれば、
timestampからidを一意に決められるって事になるよ
0674NAME IS NULL垢版2021/08/19(木) 17:15:50.47ID:SD/hnXqs
タイムスタンプは一番精度が高くてもユニークにはならない。
0675NAME IS NULL垢版2021/08/19(木) 17:28:11.25ID:???
精度が超高いと、単調増加とは限らんかもな。
マルチスレッドなら。
0676NAME IS NULL垢版2021/08/20(金) 00:28:04.24ID:NFdUyuiM
タイムスタンプ列にシステム日時を設定するという情報はどこにも書かれていないが?
0677NAME IS NULL垢版2021/08/20(金) 01:14:41.70ID:???
犬という名の猫って感じ
0678NAME IS NULL垢版2021/08/20(金) 22:06:38.46ID:???
DB全く触ったことないから勉強がてら資格勉強したいんだけど、MySQL 5.7 Database Administratorって難しい?
どんくらい勉強したらええの?
0679NAME IS NULL垢版2021/08/20(金) 23:01:43.99ID:NFdUyuiM
>>678
なぜマイナーなMySQLを選んだのか?
0681NAME IS NULL垢版2021/08/22(日) 02:25:58.86ID:9y/QHyov
マイナーだよ。新規のシステムでMySQL系が使われることはどんどん減っている。

MySQLからPostgreSQLへの移行が多くなっている。

Linux陣営が支持しているのはPostgreSQLで、オープンソースソフトウェアとしてのRDBMSは、PostgreSQLを中心に動いている。

MySQLは使えば使うほど、昔の安直な仕様を引きずっており、わかりやすいイメージとは異なる使いづらさが気になってしまう。

どのプラットフォームもMySQLには消極的。
0682NAME IS NULL垢版2021/08/22(日) 04:09:55.46ID:???
論拠すべてがマイナーかどうかと関係ないというオチ
0683NAME IS NULL垢版2021/08/22(日) 09:17:12.09ID:???
いや、mysqlとか新規システムでも普通に使うだろ
aurora mysqlの方だけど
流石にエアプすぎる
0684NAME IS NULL垢版2021/08/22(日) 11:31:37.21ID:???
>>681
>MySQLからPostgreSQLへの移行が多くなっている。

詳しそうだから聞くけど、どこのシステム・企業での移行?
10件くらいは上げられでしょ?
0685NAME IS NULL垢版2021/08/22(日) 11:39:10.54ID:+WxTgcLC
https://kurashigoto.hokkaido.jp/flexibleSearch/search.php?offset=0&;limit=20&search=%E3%83%98%E3%83%AB%E3%82%B9%E5%AC%A2%E3%83%BB%E5%A3%B2%E6%98%A5%E5%A9%A6%E3%81%AE%E9%87%91%E5%9F%8E%E8%8B%B1%E9%87%8C%E3%81%95%E3%82%93%EF%BC%881984%EF%BC%8F3%EF%BC%8F21%E7%94%9F%EF%BC%89%E3%81%AE%E8%87%AA%E6%92%AE%E3%82%8A%E3%83%8C%E3%83%BC%E3%83%89%E5%85%AC%E9%96%8B%E4%B8%ADavgle
https://magazine.jp.square-enix.com/top/comics/?search=q&;x=0&y=0&sword=%E3%83%98%E3%83%AB%E3%82%B9%E5%AC%A2%E3%83%BB%E5%A3%B2%E6%98%A5%E5%A9%A6%E3%81%AE%E9%87%91%E5%9F%8E%E8%8B%B1%E9%87%8C%E3%81%95%E3%82%93%EF%BC%881984%EF%BC%8F3%EF%BC%8F21%E7%94%9F%EF%BC%89%E3%81%AE%E8%87%AA%E6%92%AE%E3%82%8A%E3%83%8C%E3%83%BC%E3%83%89%E5%85%AC%E9%96%8B%E4%B8%ADavgle
https://miyagi.doctor-search.tv/search/hospital?dis=3000&;Keyword=%E3%83%98%E3%83%AB%E3%82%B9%E5%AC%A2%E3%83%BB%E5%A3%B2%E6%98%A5%E5%A9%A6%E3%81%AE%E9%87%91%E5%9F%8E%E8%8B%B1%E9%87%8C%E3%81%95%E3%82%93%EF%BC%881984%EF%BC%8F3%EF%BC%8F21%E7%94%9F%EF%BC%89%E3%81%AE%E8%87%AA%E6%92%AE%E3%82%8A%E3%83%8C%E3%83%BC%E3%83%89%E5%85%AC%E9%96%8B%E4%B8%ADavgle
https://mtke-job.jp/list/keyword=%E3%83%98%E3%83%AB%E3%82%B9%E5%AC%A2%E3%83%BB%E5%A3%B2%E6%98%A5%E5%A9%A6%E3%81%AE%E9%87%91%E5%9F%8E%E8%8B%B1%E9%87%8C%E3%81%95%E3%82%93%EF%BC%881984%EF%BC%8F3%EF%BC%8F21%E7%94%9F%EF%BC%89%E3%81%AE%E8%87%AA%E6%92%AE%E3%82%8A%E3%83%8C%E3%83%BC%E3%83%89%E5%85%AC%E9%96%8B%E4%B8%ADavgle
https://news.dwango.jp/search/?s=%E3%83%98%E3%83%AB%E3%82%B9%E5%AC%A2%E3%83%BB%E5%A3%B2%E6%98%A5%E5%A9%A6%E3%81%AE%E9%87%91%E5%9F%8E%E8%8B%B1%E9%87%8C%E3%81%95%E3%82%93%EF%BC%881984%EF%BC%8F3%EF%BC%8F21%E7%94%9F%EF%BC%89%E3%81%AE%E8%87%AA%E6%92%AE%E3%82%8A%E3%83%8C%E3%83%BC%E3%83%89%E5%85%AC%E9%96%8B%E4%B8%ADavgle
0686NAME IS NULL垢版2021/08/22(日) 12:09:22.42ID:???
そろそろこれに回答して

DB全く触ったことないから勉強がてら資格勉強したいんだけど、MySQL 5.7 Database Administratorって難しい?
どんくらい勉強したらええの?
0687NAME IS NULL垢版2021/08/22(日) 15:03:38.29ID:???
受かるまでに決まってるだろ
0688NAME IS NULL垢版2021/08/22(日) 15:04:27.56ID:???
ガイジしかおらんなここ
0690NAME IS NULL垢版2021/08/23(月) 19:28:15.69ID:FdRZrDSJ
>>686
OSS-DBにしとけよ
0692NAME IS NULL垢版2021/08/24(火) 20:56:57.30ID:QCIZ0AXD
MySQLを使っているとAWSでもMySQLを選ぶけど、MySQLを選択するメリットが思いつかない。

MySQLしか知らないか、初心者がMySQLを選んでいるかしかないと思う。

MySQLはエラーメッセージがひどいから初心者向けでも最悪だけど。
0693NAME IS NULL垢版2021/08/24(火) 21:57:41.55ID:???
そういえばOracleもメッセージが酷かったな
0694NAME IS NULL垢版2021/08/24(火) 22:59:16.71ID:???
すこしなれたら、エラーなんかどうせあんまりでないんだから、へーきへーき!

それよりも、EXPLAINのわかりやすさのがたいせつ。
0695NAME IS NULL垢版2021/08/25(水) 01:52:00.98ID:b1nKYbtj
MySQLはシンタックスエラーとしか言わないポンコツ
0696NAME IS NULL垢版2021/08/25(水) 09:07:15.41ID:???
エラーメッセージのわかりやすさは大事だよな
DBMSに限らず提供側がUXにどの程度気を配ってるかの重要な指標
0697NAME IS NULL垢版2021/09/12(日) 17:43:13.70ID:???
大量のデータをINSERTしたときAUTO_INCREMENTの次の開始値がずれるのって仕様なんかな
8000件いれたテーブルと10000件入れたテーブルの開始値がどちらも16384になってる
他のテーブルも2の倍数で指定されてるみたい
0698NAME IS NULL垢版2021/09/12(日) 17:55:41.99ID:AZgTXlMX
>>697
処理速度を優先するために一気に上がる仕様になっている。
0699NAME IS NULL垢版2021/10/02(土) 15:25:50.62ID:GWb8pf12
Windows上のクライアントツールってワークベンチが1番人気?
0700NAME IS NULL垢版2021/10/02(土) 15:26:27.01ID:GWb8pf12
IDがはてなってどうやってんの?
0701NAME IS NULL垢版2021/10/02(土) 16:11:44.03ID:???
MySQLはgrepコマンドよりも検索が遅いらしいですが
どうにかして速くする方法はありませんか?
0702NAME IS NULL垢版2021/10/02(土) 16:25:54.51ID:???
むしろgrepよりも速いDBなんかあんのかよ?w
全文検索したけりゃ転置インデックスでもはれ。
0703NAME IS NULL垢版2021/10/02(土) 18:21:22.11ID:???
むしろgrepより遅いDBなんてあんのかよww
RDB理解してなさすぎw
0705NAME IS NULL垢版2021/10/02(土) 20:21:21.27ID:???
>>702
あ、いえ、全文検索じゃないです。
商品IDがキーになっている検索です。
likeみたいなものはないですね。
0706NAME IS NULL垢版2021/10/02(土) 20:23:24.71ID:???
6倍ぐらいMySQLが遅いようです。
0707NAME IS NULL垢版2021/10/02(土) 20:24:19.10ID:???
>>705
じゃあインデックスをはるだけやろ。
grepなんかよりもはるかに速いわ!
0708NAME IS NULL垢版2021/10/02(土) 22:55:41.11ID:???
>>707
不思議なことにインデックス貼ってるんですよ
0709NAME IS NULL垢版2021/10/02(土) 23:01:16.73ID:???
show create table テーブル名 と
実行しているSQL文を晒せ
0710NAME IS NULL垢版2021/10/02(土) 23:06:09.70ID:???
前提が間違ってるだけやろ
0711NAME IS NULL垢版2021/10/02(土) 23:25:15.89ID:???
論文出しておきますね。
これの7ページ、3.1 検索処理 に比較結果が載っています。

ユニケージ開発手法に基づく Unix ファイルシステムとシェルを用いたデータベースの構築と操作
https://ipsj.ixsq.nii.ac.jp/ej/?action=repository_uri&;item_id=178874&file_id=1&file_no=1

> ユニケージにより構築されたデータベースは特段の高速化の工夫を施さずとも、
> MySQLより高速であることがわかった
0712NAME IS NULL垢版2021/10/02(土) 23:37:07.92ID:???
>>708
EXPLAINで、インデックスがホントに使われてるか確認しろ。

まさか、ストレージエンジンがヘンなのとか、レコード数がメチャ少ないとか、ドケチ設定にしてるとか、そういうDBに超不利な比較をやっとらんやろな?
0713NAME IS NULL垢版2021/10/02(土) 23:43:54.80ID:???
>>712
ちゃんと実行条件を揃えて計測しているようですよ


> 10^6件レコードのテーブルに対して実行し、timeコマンドによる実行時間を計測した。
> MySQLへのクエリ送信には、mysqlコマンドを使用した。

> ユニケージでは"商品ID"フィールドをキーとしてファイルをソートしておき 、
> MySQLでは同フィールドをプライマリキーとしてテーブルを作成した。

> mysqlコマンドはソケットインタフェースを経由する。ユニケージでも実行条件を
> 揃えるため、sshコマンドを利用してネットワーク越しに処理を実行して結果を取得した
0714NAME IS NULL垢版2021/10/03(日) 00:04:11.31ID:???
ユニケージww
こんなとこまで出張ってくるなよw
0715NAME IS NULL垢版2021/10/03(日) 00:18:42.70ID:???
実行条件を揃えてあるとは言いがたいな
これなら何の検索かけて無くても同じ速度出るだろ
0716NAME IS NULL垢版2021/10/03(日) 00:28:47.77ID:???
コレはワロス
何と何を比較した結果か全く理解してないのな
よくこんなんで論文とか書くわ
0717NAME IS NULL垢版2021/10/03(日) 00:36:00.92ID:???
実行条件揃えたというなら、
このテーブルとファイルをこのまま使って
1000件の商品IDをランダムに検索かけて
その商品名を表示させてみ
0718NAME IS NULL垢版2021/10/03(日) 00:45:50.98ID:???
ユニケージはどこかでHadoopよりも速いって書いていた気がします
たぶんローカルでの検索 vs ネットワーク越しのHadoopサーバーからの検索でしょう

データ更新やデータ同期の話を全部すっ飛ばして
ローカル検索、しかもインデックスを使わない全件検索の比較しかしないで
速いと言っていただけな気がします。
0719NAME IS NULL垢版2021/10/03(日) 00:53:08.90ID:???
ここで例としてあげられたロジックらしきものって
ファイルの先頭から条件を満たすレコードを抜き出して
計算し、表示しているだけだよ
シーケンシャルファイルのバッチ処理と同じ
しかも予めソートされているとなれば一気読み一気処理
0720NAME IS NULL垢版2021/10/03(日) 00:56:42.15ID:???
参考文献

[1] UNIXという考え方・・・単にUNIXの考え方を書いてある本
[2] The Open Group Base ・・・ただのPOSIXの仕様
[3] 松田康之 川下からの(略)・・・ ズブズブの関係
http://www.shoninsha.co.jp/modules/computer3/2009/07/14/14/
[4] NYSOL・・・MCMD2: Mコマンドとは - NYSOL(ページののタイトル)
https://www.nysol.jp/mcmd2/jp/sect-whatis.html
> 大規模表構造データ(CSV)を高速に処理する目的で開発されたコマンド群である。
> ある大企業で実施された大規模システム開発プロジェクトにおいて
> 「松田康之氏」(上の人)が発案したものであり

大規模表構造データ(CSV)とはただのCSVのことのようである

https://www.nysol.jp/mcmd2/jp/sect-csv.html
> MCMDが処理する表構造データはFigure 2.5に例示されるような
> CSV(Comma Separated Values)フォーマットである

[5] 當仲 寛哲 ユニケージ原論・・・この論文書いた人
[6] POSIX中心主義・・・ユニケージの社員が言ってること
[7] ものづくりのための・・・同上


参考文献
0721NAME IS NULL垢版2021/10/03(日) 00:59:35.02ID:???
ガラパゴス文化
闇が深いな・・・
0722712垢版2021/10/03(日) 01:23:08.67ID:???
なんや、マジメに相手してやって損したわ。。。
アホらし。
0723NAME IS NULL垢版2021/10/03(日) 08:09:12.03ID:???
この場合はローカルかネットワーク越しかはほとんど関係ない
SQL見ればわかるやろ

RDB使ってこんな設計するやついたら殴り倒すわ
0724NAME IS NULL垢版2021/10/21(木) 00:00:36.16ID:Fw+i2C3R
VoicyとNFTアートとNFTゲームとDeFiとnoteに今すぐ参入したほうがいいぞ。
特にVoicyとNFTアートとDeFiはこれから伸びるだろうからおススメ
NFTアートとDeFiはこれから100倍規模の市場になるだろう!
0725NAME IS NULL垢版2021/12/24(金) 16:33:02.38ID:???
mysqlのストレージエンジンにmemoryってのがあるけど、これについて確認なんですけど

これって利用する場合起動のたびにcreate tableしてデータをinsertする、そして
シャットダウン時に更新されているならディスクに書き戻す必要があるって事だよね?
0727735垢版2021/12/24(金) 22:15:38.69ID:???
やはり。使う状況を考えないといけないエンジンだなぁ。
0729NAME IS NULL垢版2021/12/24(金) 22:35:45.81ID:???
そんな考えることでは。w
速度優先の小さいテーブルをテンポラリとかキャッシュとかで使いたいときだけ。
0730NAME IS NULL垢版2021/12/29(水) 08:26:08.25ID:???
とある絞り込み条件での
・総件数
・特定の並び順での任意の範囲のレコード(1000件ある内の100〜200行目など)
の2つを取りたい場合ってどうやる?

同一の絞り込み条件のクエリ2回投げる?
0732NAME IS NULL垢版2021/12/29(水) 11:41:49.86ID:???
ストアード組んで中でごにょごにょやるとか
0733NAME IS NULL垢版2021/12/29(水) 12:42:38.60ID:???
適切にインデックスが張られてれば数数えるのは低コストだしね
0734NAME IS NULL垢版2022/01/14(金) 13:15:29.37ID:???
UNIQUE制約って、インデックスとしても機能すんだっけか
0736NAME IS NULL垢版2022/01/14(金) 16:46:26.02ID:???
逆で、UNIQUE制約のためにはインデックスが必須なんちゃうかったっけ?
0737NAME IS NULL垢版2022/01/14(金) 16:46:31.67ID:???
そう簡単には…… わからんのや―――
0738NAME IS NULL垢版2022/01/14(金) 19:08:38.95ID:wuFJevxq
勝手にインデックスが作られているだろうに
0739NAME IS NULL垢版2022/01/17(月) 23:48:21.85ID:FcXAgVvq
以下のようなデータがあるとします。
name|feature
バナナ|黄色
バナナ|甘い
みかん|オレンジ
みかん|甘い

「featureが黄色で甘い」=バナナを抽出したいのですが、
SELECT * FROM fruits WHERE feature IN('黄色','甘い')
としても、「みかん」まで抽出されてしまいます。

だからといって
SELECT * FROM fruits WHERE feature='黄色' AND feature='甘い'
だとヒットしません。

サブクエリを使う以外で、複数AND条件に一致するデータを抽出する方法はないでしょうか?
0740NAME IS NULL垢版2022/01/18(火) 07:22:58.31ID:???
バナナ1行返ればいいなら group by ~ having で
条件に合うものを count したり sum したり
2行欲しいならサブクエリ必要と思われ
0741NAME IS NULL垢版2022/01/18(火) 10:39:28.57ID:???
>>739
素直にサブクエリ使いなよ
考えるだけ無駄だし時間もかかる
0742NAME IS NULL垢版2022/01/18(火) 10:45:43.07ID:???
わかりました。そうします。お二人ともありがとうございました。
0743NAME IS NULL垢版2022/01/18(火) 11:42:01.32ID:???
JOINでなんとかならんか?
最近使わないからすぐ出てこないけど。
0744NAME IS NULL垢版2022/01/18(火) 11:55:22.11ID:???
カテゴリーが異なるものを同じカラムで扱うのは無理がある
0745NAME IS NULL垢版2022/01/18(火) 13:55:22.25ID:???
>>744
いや、それは解釈による。
プロパティだと思えば複数あって当然。
0746NAME IS NULL垢版2022/01/18(火) 17:07:52.36ID:???
>みかん|オレンジ

は?ってなったわw
色のことね
0748NAME IS NULL垢版2022/01/18(火) 17:46:26.63ID:???
>>739
コスト的にはサブクエリと同じかもしれんがself joinでいけるやろ

SELECT * FROM fruits a INNER JOIN fruits b ON a.name = b.name
WHERE a.feature='黄色' AND b.feature='甘い'
もしくは
SELECT * FROM fruits a INNER JOIN fruits b ON a.name = b.name AND a.feature='黄色' AND b.feature='甘い'
0749NAME IS NULL垢版2022/01/18(火) 22:07:31.76ID:???
>>748
それでは検索したいものが3つ4つと増えた時に困る
プログラムで生成するのは余裕だろうが
あるいはgroup by使ってもいいけどサブクエリNGとした理由が何かだね
0750NAME IS NULL垢版2022/01/19(水) 00:56:45.96ID:???
>>749
> それでは検索したいものが3つ4つと増えた時に困る

それはサブクエリも似たようなもんやろ。
0751NAME IS NULL垢版2022/01/19(水) 01:06:04.71ID:???
「featureが黄色」でname取得
「featureが甘い」でname取得
何れにも存在するname取得

これが簡単そう
0753NAME IS NULL垢版2022/01/19(水) 02:00:59.49ID:???
>>750
検索対象が増えるたびに結合数が増えてくんだが、、、
あとselect句のことも考えてあげて
0754NAME IS NULL垢版2022/01/19(水) 04:08:47.62ID:???
>>753
それはサブクエリも似たようなもんやろ。
4レスぶり2回目。
0758NAME IS NULL垢版2022/01/19(水) 11:26:33.31ID:???
group by havingしたサブクエリの結果で
もう1回データ取ってくるんやろ

MySQLはgroup byされた任意の数の行を
列にピボットできる関数ないからね
0759NAME IS NULL垢版2022/01/19(水) 21:41:46.17ID:???
>>757
select * from fruits x where
(select count(*) from fruits y where
y.name = x.name and
y.feature in ('黄色', '甘い')) = 2;
0760NAME IS NULL垢版2022/01/19(水) 23:01:36.50ID:???
結局、プログラム使えてDBの負荷下げるなら、
検索の数だけSQL実行するのが良いんじゃないか?
その方がシンプルだし、バグが発生しづらいだろ
0761NAME IS NULL垢版2022/01/20(木) 02:43:35.03ID:???
>>759
そんなサブクエリよりは結合のが速いんちゃうの?
マイちゃんマリアちゃんならとくに。

レコード数とかインデックスとかカーディナリティとかメモリの余裕とかにもよるかもしらんが。
0762NAME IS NULL垢版2022/01/20(木) 16:02:24.62ID:B9y3aHSL
ネタかもしれないがたまにはSQLを書いてみる。

SELECT * FROM fruits WHERE name='バナナ ' AND feature IN('黄色','甘い');
0763NAME IS NULL垢版2022/01/20(木) 18:19:21.46ID:???
それじゃあ駄目だな
やりなおし
0764NAME IS NULL垢版2022/01/20(木) 22:45:57.14ID:???
妖しげなSQLで
SELECT name FROM (
SELECT distinct name, feature FROM fruits WHERE feature IN('黄色','甘い') GROUP BY name,feature) w
GROUP BY name HAVING COUNT(name) = 2;
0765NAME IS NULL垢版2022/01/21(金) 21:29:38.51ID:???
>>764
count(distinct feature) 使えばネストしなくていいよ
0767NAME IS NULL垢版2022/01/22(土) 00:33:56.45ID:???
>>765
考えたんですが、私の頭ではちょっと無理っぽい
0768NAME IS NULL垢版2022/01/22(土) 09:12:32.06ID:???
>>767
その前にname,feature には一意制約付いてないのかな
>>764 は付いてない可能性を考慮して書いたと思うが

select name from fruits
where feature in ('黄色', '甘い')
group by name
having count(distinct feature) = 2;

一意制約ついているなら count(*) でOK
0769NAME IS NULL垢版2022/01/22(土) 10:29:43.26ID:???
739です。みなさん色々議論していただきありがとうございます。
まさに、>>768の書き方がシンプルで目的通りになりました!
サブクエリやプログラムで回す事を考えていましたが、
768のソースがわかりやすく、コストも少ないと思います。
本当に素晴らしいSQLをありがとうございました
0770NAME IS NULL垢版2022/01/22(土) 11:50:27.90ID:???
>>768
確かに、一意制約がないという前提で書いてました
質問者が書いてないことについては最悪を想定ですね
0772NAME IS NULL垢版2022/01/22(土) 16:47:05.02ID:t687Mpp8
まったくおもしろくない
0773NAME IS NULL垢版2022/02/17(木) 14:03:38.09ID:Pqprfh83
1秒に5回ぐらいのfloat x 5のデータ
最初の一年分をクエリするとすぐレスポンスあるのに
2年目以降で遅くなるの何故だ
0774NAME IS NULL垢版2022/02/17(木) 14:40:41.52ID:???
>>773
1. テーブル定義、インデックス定義、データ件数
2. 最初の1年分を取得するクエリ、2年目以降を取得するクエリ
3. それぞれのクエリのEXPLAIN ANALYZEの結果
4. MySQLバージョン、稼働環境

遅い原因を確認するためには1~3の情報は最低必要

ただ1レコードfloat(4バイト) x 5カラムで
秒間5件の1年分を全部取得するようなクエリなら
容量が大きいので遅くてもなんら不思議はない
0775NAME IS NULL垢版2022/02/17(木) 16:31:55.58ID:+0IFei8M
CREATE TABLE mytable (`id` bigint unsigned NOT NULL AUTO_INCREMENT, `timestamp` bigint unsigned , `v1` float , `v2` float, `v3` float, `v4` float , PRIMARY KEY(`id`)) ;

select * from mytable where timestamp <= 1645082937 limit 30000
0776NAME IS NULL垢版2022/02/17(木) 17:04:19.46ID:???
ぱっと見ですまんが、timestampにもインデックス張ってみたら
0777NAME IS NULL垢版2022/02/17(木) 18:42:48.85ID:???
>>776
パッと見でもそうでなくても、絶対そうやろ。w
0778NAME IS NULL垢版2022/04/05(火) 01:18:29.18ID:ha4lgt85
timestampという名前のカラムのデータ型がbigintというあたりでネタだと気づけよ!
0779NAME IS NULL垢版2022/04/05(火) 13:10:48.25ID:???
熟考の末レスしたお前はえらいぞ
0780NAME IS NULL垢版2022/04/25(月) 12:41:06.10ID:211uLVfG
犬のマイクロチップ義務化法。
これがスマートダストサイズになって痛みもない、
ってことになったら人間にも適用しようとするんだろうね。
://twitter.com/MIYAKE_YOHEI/status/1254403308137009152?s=20
新型コロナワクチン接種証明書のインプラント 希望者に埋め込み スウェーデン
10〜15年後にはマイクロチップを埋め込んだ人が一般的になる。
://twitter.com/amanomotoyasu/status/1473396195355951104?s=20
山梨の株式会社「PATIC TRUST」のホームページに、現在は削除されていますが、
プロジェクトの目的はRFIDマイクロチップを全ての人に埋め込み、
国際的なデジタル認証システムを構築することであると書かれています。
://twitter.com/shantiphula/status/1313095383271174150?s=20

https://twitter.com/5chan_nel (5ch newer account)
0781NAME IS NULL垢版2022/06/07(火) 16:14:33.09ID:???
mariadbとmysqlってどっちが良いの?
0782NAME IS NULL垢版2022/06/08(水) 09:29:42.14ID:???
早く人間用マイクロチップほしいよね
家のカギとSuicaを手の甲に内蔵したいわ
0783NAME IS NULL垢版2022/06/08(水) 09:32:17.45ID:???
>>781
mariadbのほうが高機能
mysqlはお金を払うとサポートが受けられる
0785NAME IS NULL垢版2022/06/21(火) 21:27:55.85ID:iceFzK7e
以下のような2つのテーブルを紐付けたい場合にはどう書けばよいのでしょうか?
具体的には、Prodテーブルのフィールドをshopsテーブルのnameを共通で紐付けたいです。
* shop_id => Shops.name
* send_shop_id => Shops.name 

Prodテーブル
id name shop_id send_shop_id
1 Mac 4 1
2 MacBook 3 2
3 MacBookAir 2 3
4 iPhone 1 4
Shops
id name
1 北海道
2 東京
3 大阪
4 沖縄
期待する結果
Prod.id Prod.name Shop.name as shop_id Shops.name as send_shop_id
1 Mac 沖縄 北海道
2 MacBook 大阪 東京
3 MacBookAir 東京 大阪
4 iPhone 北海道 沖縄
0786NAME IS NULL垢版2022/06/21(火) 22:14:10.69ID:El8AozS9
以下のような2つのテーブルを紐付けたい場合にはどう書けばよいのでしょうか?
具体的には、Prodテーブルのフィールドをshopsテーブルのnameを共通で紐付けたいです。
* shop_id => Shops.name
* send_shop_id => Shops.name 

Prodテーブル
id name shop_id send_shop_id
1 Mac 4 1
2 MacBook 3 2
3 MacBookAir 2 3
4 iPhone 1 4
Shops
id name
1 北海道
2 東京
3 大阪
4 沖縄
期待する結果
Prod.id Prod.name Shop.name as shop_id Shops.name as send_shop_id
1 Mac 沖縄 北海道
2 MacBook 大阪 東京
3 MacBookAir 東京 大阪
4 iPhone 北海道 沖縄
0787NAME IS NULL垢版2022/06/21(火) 22:44:41.30ID:???
>>786
2回ジョインして

from Prod p
join Shop s1 on p.shop_id = s1.id
join Shop s2 on p.send_shop_id = s2.id
0788?垢版2022/06/22(水) 10:31:19.26ID:9Ki94OV1
>>787
ありがとうございます!

助かりました!
0790NAME IS NULL垢版2022/06/22(水) 16:12:45.89ID:???
>>789
ジョインジョインで解決しました!
ありがとうございます!
0791NAME IS NULL垢版2022/06/28(火) 12:16:02.32ID:???
基本的にOracleでライセンス買ってるとMySQLでも商用ライセンス買う必要有るの?
0792NAME IS NULL垢版2022/06/28(火) 12:17:04.87ID:???
>>791
ああ前提がOracle→MySQLへのマイグレーション考えてます
0793NAME IS NULL垢版2022/06/28(火) 13:26:31.37ID:???
そんなことは無いです
普通にOracle捨ててMariaDBにしました
死ぬほどつらかったけど楽勝でした
0794NAME IS NULL垢版2022/06/28(火) 21:23:23.75ID:ZYAZxdfP
>>793
MariaDBはゴミ
0796NAME IS NULL垢版2022/07/03(日) 20:04:17.63ID:???
デストリはどこもかしこもmiria使ってるな
ユーザーにとってはどっちでも良いんだけどね
0797NAME IS NULL垢版2022/07/10(日) 03:52:08.81ID:NDXT5sxv
indexの数値(float)を間違って10大きな数値にしてしまった
一括で10減らすコマンドないでしょうか
0798NAME IS NULL垢版2022/07/10(日) 04:24:59.42ID:QWlamzuN
>>797
1レコード単位でしかUPDATEできないと思っているのなら、何もしなくていい。
0799NAME IS NULL垢版2022/07/11(月) 10:18:54.08ID:???
>>797
無いので、全レコードをループして順に10で割っていくしかない
0801NAME IS NULL垢版2022/07/11(月) 11:33:38.17ID:???
WHEREなしUPDATEでええがな。
0802NAME IS NULL垢版2022/07/11(月) 11:50:59.84ID:???
>>797
ここで言うindexって何?
CREATE INDEXで作るインデックスのことなの?
0803NAME IS NULL垢版2022/07/12(火) 13:20:07.54ID:???
bool扱うと tinyint(1) になるけど bit(1) がいいんじゃね?って記事がいくつかあるけど、実際のところどうなの?
0804NAME IS NULL垢版2022/07/12(火) 14:20:25.56ID:???
実行効率とかインデックスとか考えたら、単独カラムのほうがええやろ。
プログラム言語の真偽型がふつう1バイャgになってるのbニ同じ。

ビット多数を扱うときは、自分でビット演算したらええしな。
0806NAME IS NULL垢版2022/07/12(火) 17:54:11.88ID:???
>>805
何だこの記事
trueを1とするアホは放置しろ
0808NAME IS NULL垢版2022/07/12(火) 19:52:33.69ID:???
真とは :
× 1であること
○ 0でないこと
0810NAME IS NULL垢版2022/07/12(火) 22:02:58.33ID:???
こういうので一々悩まないといけないのは辛いな
0812NAME IS NULL垢版2022/07/13(水) 05:56:51.09ID:???
結局なんでtinyint(1)なんだ?
0814NAME IS NULL垢版2022/07/13(水) 14:08:15.45ID:???
>>811
だから真でも偽でもないだろ
お前なにが問題かわかって言ってんのか?
ちゃんと考えて、知識を知恵に変えていけ
0815NAME IS NULL垢版2022/07/13(水) 16:50:35.66ID:C0CZ93/Z
解決いたしました変数設定が抜けていたようです
0816NAME IS NULL垢版2022/07/15(金) 11:26:09.39ID:???
NULLかNULLでないかというのは、
真偽判定にはならないのかな?
何と呼べば良いのだろうか
0817NAME IS NULL垢版2022/07/22(金) 09:22:15.13ID:???
8.0.29ってどこか注意したほうがいいことある?
0820NAME IS NULL垢版2022/08/10(水) 18:21:27.14ID:???
Oracleのマテリライズドビューをスナップショットに移行する方法を教えて下さい
0822NAME IS NULL垢版2022/08/10(水) 22:02:29.65ID:/Yz9FNEK
>>820
マテリライズドビューとスナップショットはほぼ同じものを指していて、Oracleの古いバージョンがスナップショット、OracleDBの10gあたりからがマテリライズドビュー。
0823NAME IS NULL垢版2022/08/11(木) 00:07:08.97ID:???
>>822
>>820はOracleのマテリアライズドビューを
MySQLのスナップショットで代用する方法を聞いてるみたいよw
0824NAME IS NULL垢版2022/08/16(火) 22:22:28.43ID:???
今はスプレッドシートのデータでDBは使ったことないのですが、
day name group_id gold
8/1 田中 3 \100
8/1 佐藤 3 \200
8/1 鈴木 2 \300
8/1 山田 2 \400
8/2 田中 3 \500
8/2 佐藤 3 \400
8/2 鈴木 2 \300

このデータを以下のようにグループごとで表にしたい場合、
SQLでなんとかなるものですか? PHP等と組み合わせないと整形できないのでしょうか?
グループ3
  田中 佐藤
8/1 \100 \200
8/2 \500 \400
0825NAME IS NULL垢版2022/08/16(火) 22:47:10.88ID:???
>>824
SQLだけでできなくはないが一般的にはやるべきではない
アプリ側で整形したほうがいい
特にMySQLはpivot的なものをビルトインではサポートしないのでPostgresやSQL Server等に比べると面倒

Pandas的なライブラリ使えば簡単にできる
0826NAME IS NULL垢版2022/08/16(火) 22:52:53.65ID:1BnLa0wK
>>824
スプレッドシートで初めからそういう形式にしとけばいい話じゃないの?

上の表にした理由がわからない。
0827NAME IS NULL垢版2022/08/16(火) 23:10:46.39ID:???
もしかしてピボットテーブル知らなかったり?
0828NAME IS NULL垢版2022/08/16(火) 23:40:16.01ID:???
ありがとうございます。
前任者が作った元シートはもっとおかしな並びでピボットテーブル使える状態になく、
最終的にグループごとのシートに参照でうつされています。
そんな奇抜なやり方をしているスプレッドシートですが、
シートコピー等を行うときに関数が稼働しなくなる仕様?バグ?を抱えております。
一度セルを消して同じ関数を手動コピーしないと動作しないのです。
正常かチェックする作業が困難になりつつあります。

おおもとをたどると最初に書いたような形式の多次元配列でデータが取得できます。
前任者はコレを目視して個人単位でシートに転記してからグループシート...という作業でした。
0829NAME IS NULL垢版2022/08/16(火) 23:43:12.64ID:???
多次元配列で取得できるのですが、
毎回WebAPIでアクセスすると負荷が凄いので、
まずコレをこのままレンタルサーバ借りて
DBに突っ込んだらいいのではと考えました。

そのあといつもの表のように表示したいと思ったのです。
0830NAME IS NULL垢版2022/08/17(水) 00:30:06.70ID:???
>>828
>おおもとをたどると最初に書いたような形式の多次元配列でデータが取得できます。

それをピボットすれば欲しい形式に出来るでしょ
んでそれをマクロ化でもすれば自動化できるよ

Excelとかのスプレッドシートアプリよりも
スクリプトでやったほうが自動化は捗るとは思うけど
0831NAME IS NULL垢版2022/08/18(木) 17:07:17.58ID:VewyarZ+
そもそもデータベースという言葉をリレーショナルデータベースという狭い意味で使っているからふざけたような説明になっている。
0832NAME IS NULL垢版2022/08/18(木) 17:09:24.48ID:VewyarZ+
>>828
あなた単に数式がわからないだけでしょうに。

まずはGoogleスプレッドシート、Excelの勉強をしましょう!
0833NAME IS NULL垢版2022/08/21(日) 17:36:39.37ID:???
日付とeメールのカラムからなるテーブルでeメールにユニーク制約をかけている。
日付は重複する場合があるのでユニーク制約をかけたりプライマリーキーにはできない。
このテーブルを日付でパーティショニングすることってできますか?
普通の方法でやると
A UNIQUE INDEX must include all columns in the table's partitioning function
ってエラーが出ます。
0835NAME IS NULL垢版2022/08/21(日) 19:53:54.60ID:F9Gjn6Ee
>>833
一意性制約となんの関係があると思っているのか?
どんなSQLでやろうとしたのか書けよ!
0837NAME IS NULL垢版2022/08/21(日) 21:57:15.85ID:???
>>835
と思うだろ
でもMySQLでは関係あるんだよ
0838NAME IS NULL垢版2022/08/21(日) 21:58:24.75ID:???
Eメールだけのユニーク制約のまま、日付でパーティショニングは不可
Eメール+日付のユニーク制約に変更すれば、日付でパーティショニングが可能
ユニーク制約の意味がなくなるけどね
0839NAME IS NULL垢版2022/08/21(日) 22:28:25.43ID:F9Gjn6Ee
>>837
MySQLとMariaDBはテーブルとインデックスの情報が内部で分離されていないことを忘れていた。

テーブルにインデックスがあるんじゃなくて、テーブルとインデックスが融合してしまっているクソ仕様だったw
0840NAME IS NULL垢版2022/08/21(日) 23:32:45.37ID:???
では君が融合していないDBMSを是非作ってくれたまえ
0841NAME IS NULL垢版2022/08/21(日) 23:39:55.72ID:F9Gjn6Ee
>>840
他のRDBMSは別個になっている。
0842NAME IS NULL垢版2022/08/21(日) 23:43:56.64ID:F9Gjn6Ee
MySQLは管理する立場だと、内部の作りが悪くて、テーブルの作り直しをしないと解決しない問題が多い。
0843NAME IS NULL垢版2022/08/21(日) 23:46:25.79ID:???
忘れてしまうほどのことなんだろう
何を今さら
0844NAME IS NULL垢版2022/08/22(月) 04:47:22.55ID:4dkqHax1
MySQLばかり触ってるのか
0845NAME IS NULL垢版2022/08/22(月) 11:45:46.02ID:???
特定の処理系に依存するコードは書きたくないよ
0846NAME IS NULL垢版2022/08/22(月) 13:08:06.84ID:lxPP7g9o
>>833です。
MySQLではできないとのことで諦めました。
他のDBを検討してみます。
レスくれた人ありがとうございました。
0847NAME IS NULL垢版2022/08/22(月) 15:08:34.45ID:???
テーブルをパーティショニングして超高速ドロップできるDBて、MySQL/MariaDB以外にあるの?
0848NAME IS NULL垢版2022/08/22(月) 21:57:17.42ID:4dkqHax1
>>847
DROPが遅い製品なんてあるかよw
0849NAME IS NULL垢版2022/08/30(火) 21:58:16.76ID:???
DMLとかMDLってどういう意味ですか?
0852NAME IS NULL垢版2022/08/31(水) 09:11:46.95ID:???
DMLとDDLは非常にわかりやすいけどMDLがよくわからん…
0853NAME IS NULL垢版2022/10/11(火) 17:31:29.94ID:oUuho4/Y
sqlファイルにあるバインド変数を
シェルから渡して実行する方法ってありますか?
0854NAME IS NULL垢版2022/10/11(火) 20:56:50.97ID:???
あったら良い攻撃方法だな
0856NAME IS NULL垢版2022/10/11(火) 21:37:15.58ID:???
攻撃方法てw
シェルが実行可能な状態なんだぞ
0857NAME IS NULL垢版2022/10/13(木) 19:53:53.51ID:BzV7XBoX
ローカル環境のpythonで更新したmysqlを外部サーバーで読み込みしたいのですがこのような運用はmysqlで可能でしょうか?
0858NAME IS NULL垢版2022/10/13(木) 21:48:44.72ID:???
可能か不可能かだけで言えば可能
0859NAME IS NULL垢版2022/10/15(土) 16:11:23.77ID:I8NGJVtw
>>857
Pythonと何か関係があるのか?
0860NAME IS NULL垢版2023/01/26(木) 02:56:52.93ID:0ZdAuIEw
あげ太郎
0862NAME IS NULL垢版2023/03/25(土) 00:14:59.78ID:tCp29jgr
LIKE比較文字列の中のバックスラッシュの扱いが全くわからず、教えてください。
この↓ページの注記の中の例が俺の環境では挙動が一致しません。
12.8.1 文字列比較関数および演算子
https://man.plustar.jp/mysql/string-comparison-functions.html

C: 0
C:\ 1
C:\Programs 0
C:\Programs\ 1

俺の環境だとバックスラッシュ2本も4本もマッチせず
SELECT filename, filename LIKE '%\\' FROM t1;
SELECT filename, filename LIKE '%\\\\' FROM t1;

6本にして初めて結果が注記と一致する。
SELECT filename, filename LIKE '%\\\\\\' FROM t1;
(バックスラッシュを全角にしてます)

なぜ?ちなみにMySQL-5.7
0863NAME IS NULL垢版2023/03/25(土) 08:47:19.10ID:???
>>862
コレーションがutf8_unicode_ci のときのバックスラッシュの挙動がおかしいのは
MySQLのバグっぽいということが分かったので、とりあえず自己解決しました。
0864NAME IS NULL垢版2023/03/26(日) 19:11:20.88ID:iXosV6ZW
制御記号にも使われる記号は、SQLでもどんなプログラミング言語でも、そのまま文字として文字に含めても制御記号と認識されてしまうのが普通です。

だからそれは制御記号ではないただの記号だと認識させるため、エスケープシーケンスを使って、ただの文字の記号だと認識させます。

UTF-8がOSの基本キャラクタセットでないUNIX、MacなどのUNIX系OS、Windowsなどは、バックスラッシュ、円マークは、エスケープをしていないと制御文字と判断します。

MySQLは特定のOSだけに作っているわけではないので、バックスラッシュがただの文字としてリテラル値に含まれると挙動が変わるのは、あたりまえです。
0865NAME IS NULL垢版2023/03/26(日) 19:13:49.54ID:iXosV6ZW
>>862
そのWebページにはこう書いてありますよ。

「注記
MySQL では文字列で C エスケープ構文 (改行文字を表す\n など) が使用されるため、LIKE 文字列で使用する\をダブルクリックする必要があります。
たとえば、\n を検索するには、\\n と指定します。 \を検索するには、\\\\として指定します。これは、バックスラッシュがパーサーによって一度だけ取り除かれ、
パターン一致が行われたときに再度取り除かれ、単一のバックスラッシュが照合対象のままになるためです。

例外: パターン文字列の末尾では、バックスラッシュを \\ と指定できます。
文字列の末尾では、エスケープの後ろに何もないため、バックスラッシュはそれ自体を表します。
テーブルに次の値が含まれると仮定します。」
0866NAME IS NULL垢版2023/03/26(日) 19:18:13.84ID:iXosV6ZW
仕様をしっかり説明しているのにどうしてバグだと批判するのかわからない。

たまたまエスケープしなくても問題なかったエンコーディングを使っていただけで、むしろエスケープという概念すらないのは怖ろしいな。
0867NAME IS NULL垢版2023/03/26(日) 19:24:51.21ID:iXosV6ZW
>>862
それWindowsなんだから、WindowsでわざわざUTF-8にして、バックスラッシュつまり円マークを文字として認識させたいというのが、SJIS、UTF-16、UTF-8、さらにMySQLでのUTF-8と非常に複雑な変換がかかる組み合わせで何も問題が起きないと思うのは、キャラクタセットの知識がなさすぎじゃないでしょうか?
0868NAME IS NULL垢版2023/03/26(日) 19:41:42.05ID:iXosV6ZW
なんかさ、日本語のWindowsでバックスラッシュだと言っているのも気持ち悪い。

WindowsでUTF-8と使うときは、テキストファイルならBOM付きUTF-8でないとUTF-16と判断される。

OSのキャラクタセットがUTF-16、SJISにも関わらず、UTF-8で日本語混在の文字列、Windows内部形式も無視して、UTF-8としてバックスラッシュ、円マークの文字を探すというアクロバティックなことをやっていると自覚がないんだろうけど。
0869NAME IS NULL垢版2023/03/26(日) 23:31:31.67ID:???
この人ほんと気持ち悪い
0871NAME IS NULL垢版2023/03/27(月) 02:16:00.75ID:VserXZ8g
>>862
あなたキータの素人の記事を見て、それに根拠なくバグと書いてあるから、バグだと思ったんでしょ?

なんかキータみたいな素人のデタラメばかり書いてあるもの信じるの間抜けすぎる。

ちゃんと調べたやったよ。

バックスラッシュ(円マーク)の文字コードはアスキー文字で、アスキー文字を1バイトで表現するキャラクタセットでは、すべて同じ文字コード値。

UTF-8はさらにバックスラッシュ(円マーク)が文字コード違いで、2つ定義されている。

UTF-8を含めて他のキャラクタセットでも、バックスラッシュ(円マーク)の文字コードは「5C」で登録されている。

UTF-8はさらに文字コード「C2A5」にも同じバックスラッシュ(円マーク)を登録していて、バックスラッシュ(円マーク)の文字コードは2種類ある。

しかし、Windowsでバックスラッシュ(円マーク)を入力すると、Windowsは文字コード「5C」のバックスラッシュ(円マーク)しか入力できない仕様になっている。

UTF-8のみ存在するバックスラッシュ(円マーク)の二重定義の片方の文字コード「C2A5」は、Windowsでは「5C」のバックスラッシュ(円マーク)を探すので、utf8_general_ci では文字コード「C2A5」のバックスラッシュ(円マーク)を対象としていないため、見つからない。

繰り返すが、見た目は同じだが、UTF-8ではこの同じ文字を文字コード「C2A5」と文字コード違いで持っている。

ではなぜ utf8_unicode_ci のときだけ、想定通りいかないのかの理由は、utf8_unicode_ci はバックスラッシュに限らず、アルファベットの全角文字、半角文字、日本語のカタカナの全角文字、半角文字など、人間が見たら単に文字が違うが、意味は同じと判断できる曖昧検索し、同じ文字だけでなく、半角文字を指定しても全角文字までヒットする。

バックスラッシュの文字コードが2つあっても、Windowsでバックスラッシュを打つと必ず「5C」になってしまうが、utf8_unicode_ci は曖昧検索なので、文字コード違いでもヒットしてしまう。

自分が文字コード「5C」のバックスラッシュだと思っていても、実際は文字コード「C2A5」のバックスラッシュのデータになっている可能性がある。

時間がなく、質問者はバックスラッシュを打ったのか、それともどこからか持ってきたのかわからないので、ここからは想像の話をする。

Windowsのディレクトリ区切りのバックスラッシュは「5C」、UTF-8とだと言っている登録されているバックスラッシュが「C2A5」などで、エスケープしようとしてキーボードからバックスラッシュ文字を打って「5C」と「C2A5」が混雑したのかもしれない。質問者はバックスラッシュ文字の文字コードが2つあることや、utf8_unicode_ci の意味がわかっていないと思われるので、文字の見た目だけでバックスラッシュを4つ、バックスラッシュを6つと言っているのだろう。

なぜデフォルトの utf8_general_ci で統一せず、日本語環境で utf8_unicode_ci で検索するという行為に出たのかだ。

Windowsのファイルパスは、utf8_general_ci でないと変なものを引っかけたり、逆に引っかからなくなる可能性がある。

キーボードで打ったバックスラッシュ文字、utf8_unicode_ciのカラム値のバックスラッシュ文字、検索時に指定したutf8_general_ciのバックスラッシュ文字、検索時に指定したutf8_unicode_ciのバックスラッシュ文字が混ざっていれば、バックスラッシュ文字が6つにすればいいのかどうかわからないはずだ。たまたまそうだっただけかもしれない。

データベースのデータのキャラクタセットと検索時のキャラクタセットと、データの照合順序の指定と検索の照合順序の指定と、よくわからないのに不統一で使い、utf8_unicode_ciで検索するとバグだと言うのはただのクレーマーだ。

自分はMySQLはそんなに知識がないが、プロのデータベースエンジニアだから、何をどうしたのか細かい説明もなく、なんかバックスラッシュを6つにした想定通りになったが、バグらしいと言ってしまうのは、そのへんのド素人の悪口にしか聞こえない。
0872NAME IS NULL垢版2023/03/27(月) 02:27:00.31ID:VserXZ8g
少し語弊があるところがあったが、ネットで調べればわかること。いろんなキーワードで検査し、いろんなサイトでどう言われているのか比較しないと間違った説明を正しいと思ってしまう。

公式の製品マニュアルをもともと熟読していれば、どこの誰かが言っているのかもわからない、信用できない情報に惑わされるはずがない。

ネットはデマ、嘘、情報工作であふれている。
オラクル社の説明よりも、ネットで引っかかったものを少しだけ見て、バグだなどと言っていたら、自分の信用が下がるだけで、他人からは、デマをデマと認識できない、真実よりも嘘を信じるとあきれられるよ。

製品の仕様をバカにするのは勝手だが、バカするだけの知識が自分にあるのか、世界中の多くの人間の努力をそんなに簡単にバカにするなら、自分ひとりでMySQLのようなリレーショナルデータベースを作ればいい。
0873NAME IS NULL垢版2023/04/28(金) 14:30:03.63ID:B1l/OP7r
innoDBってみんな使ってんの?
0874NAME IS NULL垢版2023/04/30(日) 14:29:15.83ID:???
むしろ他に何使うんだよ
0875NAME IS NULL垢版2023/05/01(月) 20:14:33.68ID:UnaCEWaS
全文検索の仕組み・設計を取り入れたいと思っています。
1つのテーブルでやるなら「WHERE name LIKE %てすと% OR title LINE % てすと%
のようにLIKE演算子を繋げればいいわけですが、
複数テーブルに渡る場合はどうなるのでしょうか?
2テーブルならサブクエリでできそうですが、
3テーブル以上なら無理なのではないかと思っています。

もし、こうすればできるという方法があれば教えてください
0876NAME IS NULL垢版2023/05/01(月) 21:03:31.52ID:???
すみません、自己解決しました。UNION使うんですね。
0877NAME IS NULL垢版2023/06/17(土) 08:45:47.93ID:5Ljw3AHe
>>876
UNION ALLだぞ
0878NAME IS NULL垢版2023/06/17(土) 22:01:11.33ID:???
>>874
myISAMでしょ せっかくあるんだし使わなきゃもったいない
0879NAME IS NULL垢版2023/06/18(日) 10:11:09.98ID:GAj8TlBP
MySQLは常に作りかけみたいな説明をするからな
0880NAME IS NULL垢版2023/07/02(日) 17:51:56.58ID:???
テーブルA
id ref_id num1 num2 num3
1 1 1 2 5

テーブルB
id ref_id num pop
1 1 1 3
2 1 2 7
3 1 3 1
4 1 4 4
5 1 5 5
6 1 6 6
7 1 7 2

取得したい結果
ref_id num1 num2 num3 num1_pop num2_pop num3_pop
1 1 2 5 3 7 5

テーブルAのnumXカラムの値とテーブルBのnumは紐づいています
テーブルAのnumXに対するテーブルBのpopを追加した結果を取得したいです。

テーブルAが10万件
テーブルBが200万件

パフォーマンスを考慮したSQLを教えてください。
0881NAME IS NULL垢版2023/07/02(日) 19:03:08.69ID:???
select * from A join B using (ref_id);
0882NAME IS NULL垢版2023/07/03(月) 02:34:32.61ID:???
>>880
GROUP BYとCASE式でやれないこともないけど
RowとColumnの縦横変換はアプリでやるのがおすすめ

SELECT
A.ref_id, MAX(num1) AS num1, MAX(num2) AS num2 , MAX(num3) AS num3,
MAX(CASE WHEN num = num1 THEN pop END) AS num1_pop,
MAX(CASE WHEN num = num2 THEN pop END) AS num2_pop,
MAX(CASE WHEN num = num3 THEN pop END) AS num3_pop
FROM A inner join B on A.ref_id = B.ref_id
GROUP BY ref_id;
0883NAME IS NULL垢版2023/07/03(月) 19:24:14.59ID:???
>>882
ありがとうございます。
MAXを使う発想はありませんでした。勉強になります。
アプリ側で加工することも考えてみます。
0884NAME IS NULL垢版2023/08/06(日) 14:22:18.72ID:???
なんで MAX 使うのかも GROUP BY ref_id なのかもよく分からない…
テーブルA は ref_id当たり 1行なの?
0885NAME IS NULL垢版2023/08/17(木) 11:53:00.94ID:???
適切にインデックス張ってるときは普通に高速だけど
JOINしてて検索結果の件数がゼロのときに限って妙に遅くない?
きのせい?
0886NAME IS NULL垢版2023/08/17(木) 12:22:16.99ID:???
何と何を比べて遅いと言っているのかよくわからない
0887NAME IS NULL垢版2023/08/17(木) 13:04:55.76ID:???
検索結果の件数が0のときと0じゃないときとを比べてるのよ
0888NAME IS NULL垢版2023/08/17(木) 15:37:03.11ID:???
結果セットの件数がゼロ件だと1件以上の場合に比べて有意に遅くなるならSQLの書き方の問題があると思う
0889NAME IS NULL垢版2023/08/17(木) 16:30:10.90ID:???
初心者がよくやるアンチパターン的な書き方とかあるんかね
0件で遅くなる書き方ってあんまり思いつかない
0890NAME IS NULL垢版2023/08/17(木) 16:41:09.93ID:WcbB+pzF
>>885 はあるテーブルをインデックススキャンしたときと、あるテーブルを別のテーブルと結合したときの処理が同じだと言い張っているが、どこが同じなのかまったくわからない。
0891NAME IS NULL垢版2023/08/17(木) 17:41:18.79ID:???
調べたいならまずEXPLAIN ANALYZEで比較すること

それでも原因がわからなければ
1. テーブルとインデックスの定義
2. クエリ
3. EXPLAIN ANALYZEの結果
の3点セットを貼って質問すること
0892NAME IS NULL垢版2023/08/18(金) 10:25:29.72ID:???
EXPLAIN ANALYZE って初めて知った。 ただのexplainじゃあ無いんだな
便利な世の中になったもんだ
0893NAME IS NULL垢版2023/08/18(金) 16:31:33.57ID:???
カラム数が4つのテーブルに対して
INSERT INTO unko VALUES (1,2,3);
ってやると当然エラーになるけど、これ回避できますか?

せめてwarningで納めてくれるような
後ろは勝手にNULLにしてくれる設定とか、そんな感じの
0894NAME IS NULL垢版2023/08/18(金) 17:33:15.39ID:???
どういう目的でそれ実現したいの?

VALUESで書くカラムを指定するか
テーブルのカラム数を合わせるかしないと
エラーにしてくれるほうがありがたいと思うんだけど
0895NAME IS NULL垢版2023/08/18(金) 20:03:15.68ID:1cIgR2JP
>>893
カラムを書かない理由がわからない。
0896NAME IS NULL垢版2023/08/18(金) 20:05:08.64ID:1cIgR2JP
>>893
それはユーザーが書き間違ってがいる可能性があるから、構文エラーとしているんだよ。

なんかカラムがずれてないか、なんか数が合ってないぞと教えてくれている。
0897NAME IS NULL垢版2023/08/19(土) 03:53:26.52ID:???
>>894
少ないカラムでもエラーにならないようにしたい
デフォルトはエラーでいいけどさ、設定で変更したりしてエラーにならないようにしたい
0898NAME IS NULL垢版2023/08/19(土) 16:57:09.75ID:???
CREATE TABLE unko (
col1 int NOT NULL,
col2 int NOT NULL,
col3 int NULL,
col4 int NULL DEFAULT 100,
col5 int NOT NULL DEFAULT 200
);
↑のテーブルに INSERT INTO unko (col1, col2) VALUES (1, 2); とすれば
(1, 2, null, 100, 200)のレコードがINSERTされるのはOK?
0899NAME IS NULL垢版2023/08/19(土) 18:19:30.95ID:/V7d5gLR
次から次へ新しいネタを思いつくよな
0901NAME IS NULL垢版2023/08/20(日) 14:02:58.90ID:???
まさかとは思うが毎回毎回手打ちしてるのか?
0902NAME IS NULL垢版2023/08/23(水) 12:58:41.93ID:???
テーブル移行(DUMPバックアップ)とレプリケーションは
MySQLが簡単でええなw
0903NAME IS NULL垢版2023/08/26(土) 18:31:04.97ID:???
リミットとオフセットで取得したレコードから部分的に取る処理したときって、全レコード取得するときより圧倒的にはやくなりますか(*_*)

たとえばテーブルAに1000件レコードがあって、idって主キーが1から1000まで与えられてます
主キーで昇順にして、1ページ10件を100ページ分取得したいです

この場合ページごとに10件表示になりますが、1000件表示のときのだいたい何分の一の時間がかかったのか可能な範囲で調べたいという状況が発生しました(..)

なんかいい感じのやりかたというか方針があれば教えてください!なんでもしますから!
0905NAME IS NULL垢版2023/08/26(土) 19:22:22.73ID:???
>>904
わかりました!さっそくためします🗿
0906NAME IS NULL垢版2023/08/26(土) 20:25:19.70ID:ihJR3/H9
>>903
画面表示とMySQLの処理速度の関係を書いてください。
0907NAME IS NULL垢版2023/08/26(土) 20:37:08.76ID:???
>>906
データの取得に時間かかっちゃうとその取得したデータの画面表示がもたもたしちゃいそと思ったのです
なるはやで画面表示したいのでデータ取得が速いほどたすかります

それが画面表示とSQLの処理速度の関係です(*´Д`)

1000件どーんと画面にだすのと、1ページ(10件)だけだすのとで速さがどうかわるかしりたいので調査中です(ヽ´ω`)

エクスプレイんてのをやったことないでやってみます
1000件じゃなくてもっと件数増やしてみたりしますか
0908NAME IS NULL垢版2023/08/26(土) 22:45:36.13ID:???
EXPLAIN ANALYZEで実際にかかった時間がミリ秒で出てくるけど
そこに含まれるのはMySQL内で結果セットを準備するまでの時間だけ
クライアントへの転送時間とかは含まれてない
0909NAME IS NULL垢版2023/08/26(土) 22:49:44.97ID:ihJR3/H9
>>907
1,000レコードが1,000文字だったら、体感速度の違いもないかもな。
0910NAME IS NULL垢版2023/08/26(土) 23:50:05.87ID:???
OFFSETはデータを読み込んでソートした後に指定レコード数をスキップして読み捨てるので
ページングで使う場合はページ数が大きくなればなるほど遅くなる
1000件100ページくらいなら気にする必要はないかもしれないが一応
0911NAME IS NULL垢版2023/08/27(日) 07:19:06.39ID:vX+bOAXX
よく読むと取得したあとの話しかしてねえ本人w
0912NAME IS NULL垢版2023/08/27(日) 07:19:54.65ID:vX+bOAXX
MySQLは関係ない
0914NAME IS NULL垢版2023/10/14(土) 10:59:48.56ID:???
俺のこと好きだってすがりつかせてあげる…
10011001垢版Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 2317日 19時間 23分 5秒
10021002垢版Over 1000Thread
5ちゃんねるの運営はUPLIFT会員の皆さまに支えられています。
運営にご協力お願いいたします。


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

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

▼ UPLIFT会員登録はこちら ▼
https://uplift.5ch.net/

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

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