MySQL 総合 Part26 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
>>29
Amazon RDSってサーバーらしいけど
これ使ってても手動アップデートが必要なのかね
外に晒してないって
同じサーバーに立ててlocalhostだけから接続するようにするか
違うサーバーでも接続出来るIPを制限するとか?
mysqltunerの警告に
User 'foobaruser@%' hasn't specific host restriction.
ともあるから接続IPは制限されてないと思われる
ヤバイ? RDSのインスタンスが動いてるホスト名が分かれば外からでも接続出来そうだが
関係者しか分かんないよな?
もしホスト名が漏れたら
脆弱性でデータが流出したり書き換えられたり
サーバーが止まったり等の被害が予想されるが・・・ MySQL以前に、そのサーバーにはファイアウォールがないのか?
ないんだったら、そっちのほうが問題じゃないか? ファイアウォールあれば
アップデートの適用は不要・・・な事は無いよね? 程度問題だろ。
完璧じゃなきゃイカンのか?
アップデートしたいならすればいい。 ちゃんとファイアーウォールが設定してあればmysqlに直接侵入は出来ないだろう
アプリケーションサーバー側の防護が不十分で
侵入できればmysqlにもアクセス出来るだろうけど
そっちに侵入できた時点でもう色々終わってるよね
脆弱性にはroot取得を可能にする物とかあるっぽいけど
root取得してまで仕込みたいウイルスって何だ まあ何層も防護があれば全て破られる可能性は低くなるな >>36
アプリサーバーへ侵入してDBサーバーへのアクセス権を入手できたからといって
DBサーバーのデータすべてを抜いたり改ざんしたり管理者権限を奪取できるとは限らない
だから被害の度合いが違ってくる
単に侵入を防ぐだけでなく被害を抑えるためにも多段防御+早期検知が重要 そもそも、そこまで心配しなければいけないものなのか?ということは、立ち止まって考えてみよう。
アップデート作業やそのあとの動作検証など、いろいろやらないといけないことがあるんだから。 会社で使ってる場合は>>39さんの言うようにやることが沢山あるから気軽に出来るものではないけど、
個人で使ってる人はバージョンアップよくする?
自分は現在5.6.20のままで次バージョンアップするのはPC買い換える時にと思ってるけど。 MariaDBとMySQLって、結局どうなるの?
やっぱMariaDBが主流になるのかな Oracleに飼い殺しされるとか危惧されてたけど
8.0も出るみたいだし、このまま使い続けそう Oracleを信じていいのか?
Java、Solaris、Sunの現状を知っているか? 去年のなつだったか、脆弱性の問題が出て
Mariaは即時対応したけれど
Oracleはしばらく放置していなかったよね >>45
知れよ!w
端的な印象を言えば、飼い殺しだ。 Auroraって言うのを使えば良くね?
あれもMySQL互換でしょ なんだかんだ言っても結局、一番まともなのはOracleだから仕方ない。 innodb_log_buffer_size
innodb_log_file_size
この項目を入れるとエラーになるようになりました。
今、サーバーが死んでしまい、新たに1から構築し直しています。
バックアップしてあったmy.cnfファイルを使っていますが、
各種設定ファイルはバックアップから引き継いで(もしくは目視で見ながら書き写し)で設定しているので、
ほとんどの設定は同じに近いと思います。
サーバーに触れるのは初めてでなんとか構築した状態で、
もはやその時何をやったか記憶が曖昧です。
my.cnf.d内の各ファイルは未編集で、編集したのはmy.cnfだけでした。
php.iniもバックアップからの復元です。
何か違う場所で編集することがあるのでしょうか?
MariaDB 5.5.56です。 カラムが3つある簡単なテーブルに
INSERT INTO table () VALUES ("1","2","3"),("4","5","6")
のように、カラムを空にして値をINSERTしても
正しく実行出来たのですが、これはそういう仕様になっているのでしょうか? できたんじゃったらそうなんじゃろ。
気になるならドキュメントを読むがよい。 >>53
標準SQLでもカラム数と値が同じなら、そのカラム順にinsertする仕様になっている。ただし勧めない。 INSERT INTO .. ON DUPLICATE KEY UPDATE
を実行した時に、insert, updateがそれぞれ何件あったのかを一緒に取得したいのですが、上のsqlの後にどんなsql文を追加すれば可能でしょうか? Character set 'utf-8' is not a compiled character set and
is not specified in the '/usr/share/mysql/charsets/Index.xml' file
というエラーが出て、Index.xmlを見てみたのですが
utf-8はちゃんとありました
エラーが出た原因がよくわかりません 何がしたいのかイマイチよくわからん。
こういうことか?
====
S ELECT @count := count(*) F ROM table;
S ET @pagesize = 10;
S ET @pagenum = 3;
S ET @offset = @pagesize * (@pagenum-1);
P REPARE STMT F ROM 'S ELECT *, ? count F ROM table LIMIT ? OFFSET ?';
E XECUTE STMT USING @count, @pagesize, @offset;
==== mysql(5.6 wni)
mysql tuner を使ったところ↓のような状況なんですが、この中で
×の付いている項目(ここでは3つ)について改善するためには
iniファイルでどのような設定にすればいいんでしょ?
ちなみにMyIsamは使う気も無し、使ってるのはInnodbのみです
https://dotup.org/uploda/dotup.org1385446.jpg innodb_buffer_pool_sizeとsort_buffer_sizeいくつよ
とりあえず増やしとけって書いてある >>65
レスありがと
innodb_buffer_pool_size は mysqld で128Mを指定、sort_buffer_size は見当たらないです show variables like '%sort%';
ではsort_buffer_size は 256kb(?)でした。 mysqldセクションでsort_buffer_sizeとinnodb_buffer_pool_sizの値を変えて試してみます。 mysqlなんですが
外部結合などの依存関係を無視して強制的に
データを削除したいんですがどうしたら良いですか? constraintを外すなら
alter table 〜 drop foreign key 〜
で消しちゃえば Likeの部分一致使ったり
Join使いまくったり
インデックスろくに使わなかったり
Entity Attribute Valueなるアンチパターンに沿った構造のテーブルを作って
更に大量のデータを入れたら
検索に二時間掛かったりするようになった
ユーザーがページをそっ閉じしても
二時間も忠犬の如く処理し続けるDBのエンジン 正確にはデュアルライセンス。
GPLか独自ライセンスの二択。 innodbが壊れたのでinnodb_force_recovery = 1で修復したけど
データが失われていないかどうかが気になる
壊れてたのはインデックスだけなのか?
データが消えてたらやばいよね innodbが壊れる環境自体がヤバい気もする。
システムとかハードウェアとか運用とか。
まあ、うちはそういう目にあったことがないから。 >innodbが壊れる環境
メモリが足りないのでスワップが発生しまくりでそこに負荷が生じた…とか? 誰でも簡単にパソコン1台で稼げる方法など
参考までに、
⇒ 『宮本のゴウリエセレレ』 というブログで見ることができるらしいです。
グーグル検索⇒『宮本のゴウリエセレレ』
NVRTDIY5WF utf8mb4でもINSERTできない文字があるのですが、どのようにすればINSERTできるようになりますか?
例えば
?( 'ω' )? insert into tt value ('\\\\?( ''ω'' )? ////'); 文字化けしているけど、
目の所のシングルコーテーションを二つにすれば上手く行きそう あ、そういうことですか。。。
すいません、初心者なもので
ありがとうございます
もうすこしがんばってみます MySQLのデータベースをWordPressで使っています。
Web上のレンタルサーバに置いているWordPressのミラーをローカルなサーバ上に作っています。
ただ、データベースの同期の方法がわからず、定期的に丸ごとコピーしていて、非常に時間がかかります。
変更のあった部分だけをミラーリングする方法について、
何かヒントや参考になるサイトをご紹介いただけないでしょうか。
よろしくお願いします。 >>88
丸ごととは?
ファイルコピー?mysqldump? >>89
ありがとうございます。
mysqldumpそのものを知らなかった、というレベルでして…。
日付指定のバックアップ、リストアができるんでしょうか? 素朴な疑問ですが、MySQLのSET型は、
1つのカラムにカンマ区切りでデータを格納できます。
しかし、カンマ区切りでデータを格納するのはバッドノウハウだと
データベース関連の書籍などで表示されています。
どうしてSET型があるのでしょうか? >>92
無能な著者が覚えたてのバッドノウハウという単語を使いたかっただけだから気にすんな
あとその本は自治体の古紙回収にだせば再生紙として価値があたえられるからオススメする >>92
その本は、MySQL限定ではなく、データベース一般についてだったのでは?
一般論としては、複数の値の記録にカンマ区切りテキストは使うな、正規化して別テーブルに割れ、となるはず。
MySQLには、SETとかENUMとかC言語っぽい特殊な型がある。便利だったり効率的だったりするので、MySQLべったりでよければ検討するべき。 いくらバカがマジョリティーだからといって
バカ向けの戒めを一般論とうそぶくのは図に乗り過ぎだと思うよ まぁ何でもメリットとデメリットを比較検討した上で使う分には問題ない
アンチパターンってのは何も考えずにやるのは止めとけってこと >>96
> バカ向けの戒めを一般論とうそぶく
意味不明。
何が言いたいのか? >>98
何か裏の意味があるんじゃないかとか気になっちゃってるの?
例えばキミがバカだとか?
まあそれは俺には否定できないけどw
安心しな>>96に書いてある通りだよw なお意味不明。
おまえがバカであることはわかったので、会話終了。 >>100
あらそうおめでとう
また一つ勘違いが増えたねw ☆ 日本の、改憲をしましょう。現在、衆議員と参議院の両院で、
改憲議員が3分の2を超えております。『憲法改正国民投票法』、
でググってみてください。国会の発議はすでに可能です。
平和は勝ち取るものです。お願い致します。☆☆ MysqlがすぐおちるのですがMariaDBにすれば改善されるのでしょうか?
よく出るエラーメッセージはこんなやつです。
mysqli_set_charset(): Error executing query in DBのURL
MariaDBはMysqlに比べてどのぐらい優れているのかもわからないので教えていただければ幸いです。 MysqlがすぐおちるのですがMariaDBにすれば改善されるのでしょうか?
よく出るエラーメッセージはこんなやつです。
mysqli_set_charset(): Error executing query in DBのURL
MariaDBはMysqlに比べてどのぐらい優れているのかもわからないので教えていただければ幸いです。 >>104
設定がおかしいからだと
どういう設定しているか詳細を晒してみると良いかも エラーが出るから他のRDBMSに乗り換えるという発想が大胆! 8.0は性能二倍だって
MariaDBいらなくね?
MySQL 8.0正式版がリリース。性能が最大で2倍、JSONデータや地理情報などサポート。ロールによるユーザー権限の管理も可能に
http://www.publickey1.jp/blog/18/mysql_802json.html >ロールによるユーザー権限の管理も可能に
これが出来るようになるのか。 MySQLは、コミュニティ版でもスレッドプールが使えるようになった? varcharの文字列の途中にタブコード(\t : 0x09)を入れたいのですけど、
例えば、'aaa\tbbb'というふうにタブコードを入れて、
読みだしてみたら、'aaa bbb'というふうにタブコードが2つの半角スペースに
置き換わっているような気がします。
タブコードを文字列の間に入れられないんでしょうか?
ちなみにタブコードで区切られたvarcharっをキーにして
利用するつもりです。 自己レスです。
文字列のなかにタブコードがあっても
全く同じように、普通に処理できました。
お騒がせしました。 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が入っているときだけだよね? >>117
そういう機械翻訳じみた発想は捨てろ
一般動詞だから絶対こうなるとかないから >>117
信用できないなら原文だけ読んでたほうが幸せになれるよ >>118
mysqldump クライアントユーティリティーは論理バックアップ を実行し、
普通に翻訳するとこうなると思うんだけど>>117の和訳は何か意図があるの? >>122
どっちも同じ意味だろ?翻訳ってそういうもんだとしか言えん 翻訳者に自由はないのか?
せっかく訳してくれてるのに。
そこまでいうなら、おまえが正確無比な翻訳を公開してもいいよ。 >>122
日本語とえいごが一対一対応する訳ねぇだろ 技術系の書籍の日本語訳に文句を言って自分の無能を棚にあげている奴は多いが
その中の決して少くない数の人々は>>122のようなガチアスペだという事実 Windows10で、MySQL5.6.40を使ってます。
Pythonから利用しています。
連続して10万件ほどデータを書き込みしたいのですけど、
1つのデータをinsertしたらcommitしたほうがいいのでしょうか?
それとも10万件insertしたあとで1回だけcommitしたほうがいいのでしょうか? その10万件のデータが全部Insertされないと整合性がとれないなら、最後に1回Commitで医院で内科医 適度に分割するのがいいと思う。
あんまりメモリもディスクもムダに使わないように。 ■ このスレッドは過去ログ倉庫に格納されています