MySQL 総合 Part26 [無断転載禁止]©2ch.net

1NAME IS NULL2017/07/13(木) 21:39:55.28ID:n0Ab2lD/
オラクル社によるオープンソースのRDBMS、MySQLの総合スレです。

MySQL 総合 Part25 [転載禁止](c)2ch.net
http://mevius.2ch.net/test/read.cgi/db/1424001054/

MySQL Developer Zone http://dev.mysql.com/
MySQL 5.5 マニュアル (E) http://dev.mysql.com/doc/refman/5.5/en/index.html
MySQL 5.1 マニュアル (J) http://dev.mysql.com/doc/refman/5.1/ja/index.html

日本MySQLユーザ会(MyNA) http://www.mysql.gr.jp/
ML過去ログ http://www.mysql.gr.jp/mysqlml/mysql/

ここで質問をする前に、MyNAでのFAQと心得の条を最初に確認しましょう。
http://www.mysql.gr.jp/frame/modules/bwiki/?FAQ
http://www.mysql.gr.jp/frame/modules/bwiki/index.php?%BB%A8%B3%D8%2F%BF%B4%C6%C0

95NAME IS NULL2018/02/10(土) 13:11:41.37ID:???
>>92
その本は、MySQL限定ではなく、データベース一般についてだったのでは?

一般論としては、複数の値の記録にカンマ区切りテキストは使うな、正規化して別テーブルに割れ、となるはず。

MySQLには、SETとかENUMとかC言語っぽい特殊な型がある。便利だったり効率的だったりするので、MySQLべったりでよければ検討するべき。

96NAME IS NULL2018/02/11(日) 00:34:10.26ID:UNyAzKgh
いくらバカがマジョリティーだからといって
バカ向けの戒めを一般論とうそぶくのは図に乗り過ぎだと思うよ

97NAME IS NULL2018/02/11(日) 02:00:50.43ID:???
まぁ何でもメリットとデメリットを比較検討した上で使う分には問題ない
アンチパターンってのは何も考えずにやるのは止めとけってこと

98NAME IS NULL2018/02/11(日) 13:38:47.77ID:???
>>96
> バカ向けの戒めを一般論とうそぶく
意味不明。
何が言いたいのか?

99NAME IS NULL2018/02/11(日) 15:13:31.90ID:UNyAzKgh
>>98
何か裏の意味があるんじゃないかとか気になっちゃってるの?
例えばキミがバカだとか?
まあそれは俺には否定できないけどw
安心しな>>96に書いてある通りだよw

100NAME IS NULL2018/02/11(日) 17:05:51.69ID:???
なお意味不明。
おまえがバカであることはわかったので、会話終了。

101NAME IS NULL2018/02/11(日) 17:50:40.33ID:UNyAzKgh
>>100
あらそうおめでとう
また一つ勘違いが増えたねw

102NAME IS NULL2018/02/14(水) 13:24:20.43ID:???
☆ 日本の、改憲をしましょう。現在、衆議員と参議院の両院で、
改憲議員が3分の2を超えております。『憲法改正国民投票法』、
でググってみてください。国会の発議はすでに可能です。
平和は勝ち取るものです。お願い致します。☆☆

103NAME IS NULL2018/04/04(水) 13:25:37.90ID:???
MysqlがすぐおちるのですがMariaDBにすれば改善されるのでしょうか?

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

MariaDBはMysqlに比べてどのぐらい優れているのかもわからないので教えていただければ幸いです。

104NAME IS NULL2018/04/04(水) 13:26:46.04ID:???
MysqlがすぐおちるのですがMariaDBにすれば改善されるのでしょうか?

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

MariaDBはMysqlに比べてどのぐらい優れているのかもわからないので教えていただければ幸いです。

105NAME IS NULL2018/04/04(水) 16:19:47.28ID:???
黙ってプログラミングやめろ

106NAME IS NULL2018/04/04(水) 21:28:12.87ID:jrbAzYZz
>>104
設定がおかしいからだと
どういう設定しているか詳細を晒してみると良いかも

107NAME IS NULL2018/04/05(木) 01:41:41.55ID:l3AE4+ue
エラーが出るから他のRDBMSに乗り換えるという発想が大胆!

108NAME IS NULL2018/04/23(月) 22:23:31.79ID:nKpwF7rJ
8.0は性能二倍だって
MariaDBいらなくね?

MySQL 8.0正式版がリリース。性能が最大で2倍、JSONデータや地理情報などサポート。ロールによるユーザー権限の管理も可能に
http://www.publickey1.jp/blog/18/mysql_802json.html

109NAME IS NULL2018/04/24(火) 05:12:07.24ID:???
>ロールによるユーザー権限の管理も可能に

これが出来るようになるのか。

110NAME IS NULL2018/04/24(火) 12:35:15.85ID:7E4WXijX
【マイトLーヤと不正義】 テロリストが天国を求めるのは、中東が地獄だから、犯人は誰か、G7の国々
http://rosie.5ch.net/test/read.cgi/liveplus/1524536573/l50

111NAME IS NULL2018/05/10(木) 12:03:19.38ID:???
mysql8とmariadb
どんどん差が開くな

112NAME IS NULL2018/05/10(木) 19:51:31.54ID:???
MySQLは、コミュニティ版でもスレッドプールが使えるようになった?

113NAME IS NULL2018/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/

114NAME IS NULL2018/05/12(土) 21:49:10.91ID:???
チューニングって、どのくらいやってる?

115NAME IS NULL2018/05/16(水) 15:27:03.17ID:ol9m4woT
varcharの文字列の途中にタブコード(\t : 0x09)を入れたいのですけど、
例えば、'aaa\tbbb'というふうにタブコードを入れて、
読みだしてみたら、'aaa bbb'というふうにタブコードが2つの半角スペースに
置き換わっているような気がします。
タブコードを文字列の間に入れられないんでしょうか?

ちなみにタブコードで区切られたvarcharっをキーにして
利用するつもりです。

116NAME IS NULL2018/05/16(水) 19:42:47.03ID:ol9m4woT
自己レスです。
文字列のなかにタブコードがあっても
全く同じように、普通に処理できました。
お騒がせしました。

117NAME IS NULL2018/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が入っているときだけだよね?

118NAME IS NULL2018/05/18(金) 08:19:37.74ID:???
>>117
そういう機械翻訳じみた発想は捨てろ
一般動詞だから絶対こうなるとかないから

119NAME IS NULL2018/05/18(金) 08:34:58.35ID:???
そんなにおかしい和訳だとは思わないが。

120NAME IS NULL2018/05/18(金) 09:12:28.23ID:???
>>117
www

121NAME IS NULL2018/05/18(金) 18:17:27.24ID:???
>>117
信用できないなら原文だけ読んでたほうが幸せになれるよ

122NAME IS NULL2018/05/19(土) 12:23:22.88ID:???
>>118
mysqldump クライアントユーティリティーは論理バックアップ を実行し、

普通に翻訳するとこうなると思うんだけど>>117の和訳は何か意図があるの?

123NAME IS NULL2018/05/19(土) 14:35:18.88ID:???
>>122
どっちも同じ意味だろ?翻訳ってそういうもんだとしか言えん

124NAME IS NULL2018/05/19(土) 14:56:50.44ID:???
翻訳者に自由はないのか?
せっかく訳してくれてるのに。

そこまでいうなら、おまえが正確無比な翻訳を公開してもいいよ。

125NAME IS NULL2018/05/19(土) 16:58:08.73ID:???
>>122
日本語とえいごが一対一対応する訳ねぇだろ

126NAME IS NULL2018/05/19(土) 18:27:50.68ID:a79jEGWC
技術系の書籍の日本語訳に文句を言って自分の無能を棚にあげている奴は多いが
その中の決して少くない数の人々は>>122のようなガチアスペだという事実

127NAME IS NULL2018/05/19(土) 20:58:48.15ID:R16XYZ3x
Windows10で、MySQL5.6.40を使ってます。
Pythonから利用しています。

連続して10万件ほどデータを書き込みしたいのですけど、
1つのデータをinsertしたらcommitしたほうがいいのでしょうか?
それとも10万件insertしたあとで1回だけcommitしたほうがいいのでしょうか?

128NAME IS NULL2018/05/19(土) 22:24:08.70ID:???
その10万件のデータが全部Insertされないと整合性がとれないなら、最後に1回Commitで医院で内科医

129NAME IS NULL2018/05/19(土) 22:49:27.66ID:???
適度に分割するのがいいと思う。
あんまりメモリもディスクもムダに使わないように。

130NAME IS NULL2018/05/19(土) 23:06:35.14ID:???
あんまり詳しくないんだけど、commitするってことはトランザクション貼るんだよね?
トランザクション貼る必要があったら分割できないし、途中で別処理が乱入してきてデータ不整合になることがないってわかってるならそもそもトランザクション貼らないでinsertすれば良くない?

131NAME IS NULL2018/05/19(土) 23:33:45.59ID:R16XYZ3x
>>128
>>129
>>130
コメントありがとうございます。
10万件が揃ってないと次の処理に行けないので、
全くわかってないんですけど、beginでロックして
トランザクションにして最後にcommitしてみます。

実行時にディスクやメモリをチェックしてみて
かなり消費しているようでしたら、1万件ずつとかで
commitしてみます。

132NAME IS NULL2018/05/20(日) 00:57:54.21ID:???
処理に順番があるだけなら、外部でロックして、後続の処理を待たせることも考えたら。
10万レコードを1トランザクションでコミットしなければいけないことなんかそうそうないんじゃないかとも思うので。

133NAME IS NULL2018/05/20(日) 01:03:32.50ID:???
>>132
これが普通だよな
不要なのにトランザクション使ってるだけならパフォーマンス落ちるだけですむけど、一万件でコミットして次のトランザクション入るまでに割り込まれたらマズいなら作りが悪い

134NAME IS NULL2018/05/20(日) 14:47:26.65ID:WSY7vKF/
>>132
>>133
ありがとうございます。
実は大きな勘違いがありまして10万件はサンプルであって、
本番用は4000万件が29ファイルの12億件ぐらいあることがわかりました。

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

どうしたらいいか、ちょっと落ち着いて考えてみます。

135NAME IS NULL2018/05/20(日) 15:19:31.36ID:???
innodb_file_format = Barracuda
を指定して節約するとか
ま、そんな量じゃ小手先だろなw

136NAME IS NULL2018/05/20(日) 15:30:13.98ID:???
4T位のHDDを4台使ったRAIDで増設しよう
今時1万くらいで買える

137NAME IS NULL2018/05/20(日) 16:33:21.75ID:WSY7vKF/
>>135
>>136
ありがとうございます。

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

そこで簡単に外付け(Eドライブ)に移動する方法ですけど、
一度、MySQLを停止しておいて、my.iniのdatadirを指定して、
そこに現在のCドライブのmysql\dataフォルダをコピーしてやって
再起動すれば、そのまま使えるのでしょうか?

138NAME IS NULL2018/05/20(日) 18:17:26.61ID:???
>>137
135だけど
Barracudaの指定後それだけでは駄目でテーブル定義に
ROW_FORMAT=COMPRESSEDを付け加えないといけないから、そこら辺はいろんな
サイトで確認してくれ
くれぐれも慎重に

139NAME IS NULL2018/05/20(日) 19:27:27.29ID:???
>>137
問題ない。

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

自前でやっていいのなら、そもそもその全レコードが必要なのかを考えるところからだろ。
サマリ処理ではいかんのかとか。

140NAME IS NULL2018/05/20(日) 20:00:42.13ID:WSY7vKF/
>>138
>>139
ありがとうございます。
データを調べていたら、不必要なものが15%ぐらいあるようですし、
重複したデータがあって、それは件数さえわかればいいので、
countで件数数えてひとつにまとめます。

他のソフトの結果と連動して使うので、
サマリ処理だけでは済みそうにないんです。

141NAME IS NULL2018/05/20(日) 20:27:59.02ID:???
それは理由としてまだあやしい。
ま、ここで正確に回答する必要なんかないんだけど。w

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

全レコードが記録されたデータファイルだけが目的なら別だけど、そうでなければ、時間をかけてつくったのにまともに検索できないデータベースができてしまう可能性も高い。
データ構造とかインデックスとかチューニングとか、いろいろあるからね。

142NAME IS NULL2018/05/20(日) 20:45:20.08ID:WSY7vKF/
>>141
ご指摘ありがとうございます。まさにそのとおりです。
まともに検索できるのかとか心配事は山ほどあります。
ただ、検索するときにはヒット件数が多くありませんので、
なんとかならないかなーと思っています。

とりあえず、やれるところまでやってみようと思います。

143NAME IS NULL2018/05/20(日) 21:12:44.83ID:WSY7vKF/
1Tの空きのあるEドライブにdataを移動して正常に起動できました。

最初、うまく起動できなかったのですけど、
フォルダのプロパティのnetwork serviceの
フルコントロール権限を与えないといけない、
というのをググって見つけて、そのとおりしたらうまくいきました!

144NAME IS NULL2018/05/23(水) 21:34:32.98ID:uoNdzmcr
こめかみでさんぷるかー

145NAME IS NULL2018/05/24(木) 01:39:57.13ID:???
昨日秋葉の99で4Tを買ってきたけど
1台8618円でした

新着レスの表示
レスを投稿する