元スレ【この先一体】MySQL 総合 Part15【どうなるの】
mysql覧 / PC版 /みんなの評価 : ○
851 = :
あるテーブルのフィールドが更新されたのを契機に
外部スクリプト(PHPかBASHスクリプトを検討)を呼び出したいと思います。
外部スクリプト側で一定間隔で監視対象のテーブルを
SELECT COUNT(*) FROM hoge WHERE ...することを
検討してましたが、数秒以内のレスポンスを要求されているため、
この方法でやるのは効率が悪いと考えています。
そのため別の方法を検討しています。
トリガからストアドを呼び出せそうなことはわかりましたが、
ストアドから外部スクリプトをコールすることは出来ますか?
MySQLのVersionは5.0を利用しています。
852 = :
あるテーブルが更新される間隔は、監視間隔よりも頻繁なのかな。
トリガーで監視対象テーブル更新で更新状態フラグテーブルのフラグを更新して、
その更新フラグテーブルをselectしたら1秒もかからないんじゃないのかな?
853 = :
Cで書いた関数を登録できるから、ある意味なんでもできる
854 = :
通信を暗号化したいんですが、
SSHのような、パスワード認証で、
通信だけ暗号化したいんだが、mysqlでできますかね?
よろしくお願いします。
855 = :
>>854
暗号化はmysqlの担当じゃないな。
VPNとかで暗号化した通信経路を作って
その上にmysqlの通信を通すのがJK
856 = :
>>854
俺の質問の仕方が悪かった。ごめん。
mysqlで5.x?だと、SSLと連携するようなんですが、
クライアントアプリの全部に、認証鍵とか埋め込むのが、
面倒なんで、通信だけ暗号化できないのかと。。。。
よろしくです。
857 = :
ラッパーを通すしかないな
そして結局は、そのラッパーを通すためにクライアントアプリを変更する羽目に
858 = :
運用がおかしくないか?
開発者以外がクライアント使うなんて想像できないんだが
オペレータがSQL使うの?
開発時点で暗号化なんて、それどんなapple?
SQLクライアントは禁止にして、
Webアプリ化、暗号化はhttpsに任せるがJK
859 = :
すむせん、MySQLのstatusの見方について教えてください
show statusで人生相談に表示するCom_系の値って基本的に加算されてゆくと思うのですが、
計測しているとあるタイミングで減少しているようです。
特にflush statusは実行してないのですがmysqld側でリフレッシュをかけているのでしょうか?
また、もしかけているなのなら実行時間のログなどはありますでしょうか?
860 = :
>>859
> 人生相談
kwsk
861 = :
× show statusで人生相談に表示する
◯ show statusで表示する
コピペミスです
読みにくくてすみません
862 = :
>>861
何をコピペミスしたのかkwsk。
863 = :
MySQLの show statsu って人生相談にも乗ってくれるのか。知らなかった
865 = :
mysql> show status 俺の人生;
ERROR 1064 : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '俺の人生' at line 1
866 = :
全否定されてるw
867 = :
>>858
レスサンクスです。
最終的に、各PCに常駐アプリいれる予定として、アプリの種類は、
資産管理ツール+ロギングの分類です。HTTPSのPOSTメソッドで、
データベースへの最低限の編集、変更などは、PHP記述で
なんとかなったので、後は、直接アプリからSQLサーバーへ
コネクトして、監査結果やらロギングを行いたいと思いまして、
アプリの開発は、mysql_ssl_set()とか使えば、なんとかなりそうなんですが、
暗号鍵のペア準備が面倒だったので、認証だけは、従来のパスワード認証で接続し、
通信だけ、暗号化したい思いまして。。。どうなんでしょうか?
868 = :
SQLインジェクションどころの騒ぎじゃないな
869 = :
なんで編集以外の時だけ直接アプリからmysqlサーバにコネクトするのかは
そういう用件だとして置いといて
クライアント側で認証鍵とかmysql_ssl_setとか使うなら、まずクライアント側でopensslが利用できないと
いけないけどその機能をクライアント側は有してるんでしょうか?
そもそもopensslがクライアント側に入ってなければ各クライアント全部にopenssl入れないといけないだろうし
使うにしてもCAファイルはクライアント側で必要みたいだし
VPNが一番楽だと思うけど
870 = :
>>868
まるほど。SQLインジェクション、PHPもろでした。ーー;
事前にqueryして、文字列を比較すれば良いのかな。ああ、しんど、
871 = :
>>869
レスさんくすです。mysql_ssl_set()
SSHのPermitパスワードAUTHっぽい動作ができるかの確認で、
mysql_ssl_set()を全部NULL指定で、該当ユーザーのGRANTに、
REQUIRE SSLを指定したけど弾かれました。なにかしら、
クライアント側で鍵を用意しないとダメかもしれません。
>>クライアント側で認証鍵とかmysql_ssl_setとか使うなら、
>>まずクライアント側でopensslが利用できないと
>>いけないけどその機能をクライアント側は有してるんでしょうか?
将来へ向けてのトライアル試験なので、
VSではコンパイルしないので、しばらくは大丈夫。
>使うにしてもCAファイルはクライアント側で必要みたいだし
>VPNが一番楽だと思うけど
VPNってのがピンとこないのですが、ローカルのクライアントポートに、
SSHのリダイレクトポートを設ける奴でしょうか?。ポートFWで、
持ち出しPCとかで流行っていますが・・・それでもいいかな。
SSHコマンドのトンネル方式か、それともSSL埋め込みか。
872 = :
サーバ側での起動オプションやサーバ側で準備しないといけないファイルもあるのでそのあたりはこちらで
>http://dev.mysql.com/doc/refman/5.1/ja/secure-connections.html
874 = :
>>855に戻る
875 = :
>>870
いやPHPの話じゃなくて、アプリから直接SQLサーバにつなぐんだろ?
てことは当然、コマンド送り放題なわけだから何でも出来てしまう。
で、>>858に帰結すると思うんだが。
編集にPOSTを使っておいて、なんで閲覧にGETを使わないの?
876 = :
>>875
>いやPHPの話じゃなくてアプリから直接SQLサーバにつなぐんだろ?
アプリ自身に、単純にパスワードを埋め込む方法だと、
通信が暗号化されても、配布しているバイナリーを解析されたら、
該当パスワードは容易に抽出できてしまうかもしれない。
結局アプリ側でなんでもできてしまう。ふむふむ。
パスワード方式は、限界で、クライアント側の公開キーを生成して、
サーバー側へ設定するしかないのか。キーはインストール時に、
自動生成して、システム管理へ投げるようにしてもらうか。
>編集にPOSTを使っておいてなんで閲覧にGETを使わないの?
GETもPOSTもPHP側の受処理としてはほぼ同じっすよね?
強い理由があってPOST閲覧している訳ではないです。
>>872、873
いろいろ情報サンクスです。アプリに埋め込むパスワード方式は
限界っぽいので、もうmysqlのSSLでやって見ようと思います。
まだシビアな情報を扱うDBにはなっていないのでいずれ。
877 = :
暗号化したパスワードをアプリに入れといて、コネクトする前にデコードして使えば多少解析されてもいいんじゃない?
ある程度独自のシード使って
ていうかバイナリー解析されたらとか心配してたら何も出来ないよ
ちょっといろいろ心配しすぎ
878 = :
一番安心かつ楽なのはWebアプリにしちゃうことだよ
880 = :
自己解決しました。
select count(*) from (select -中略- group by aa) as c
で大丈夫でした。
スレ汚し申し訳ないです。
881 :
OracleはMySQLを売却せよ - オリジナル開発者が叫ぶ
http://journal.mycom.co.jp/news/2009/10/22/018/index.html
だとさ
しかし今さらMySQLだけ買おうって会社なんかあるんかね
つぶれそうなところをSunに拾ってもらったんだろ
882 = :
IBMぐらいしか思いつかんが
ラリーがIBMに売るわけがない
883 = :
マジでどうなるの?
有料化されちゃうの?
884 = :
>>882
IBMはDB2あるからあんま意味無いんじゃ。
こういう話で国内企業が名前だけでもでて来ないのはちょっと寂しい。
885 = :
IBMはOracleの前のSunの売却先候補だったことをお忘れなく
ま、IBMもMySQLはいだんだろうが
米国勢で買えそうな資金があるのはGoogleとYahooとMSくらいか
Googleは社内で大量に使ってるからおかしな会社に売られるくらいなら買うかもしれないが、
Google社内にMySQLのエキスパートがたくさんいるからいまさらどうなっても痛くもかゆくもないだろ
5.4なんてもろにGoogleパッチでできてるようなもんだろうしな
一番の理由になりそうなのはGoogleがソフトウエア売買ビジネスをやるはずもないってことだろうな
Yahooもソフトウエア販売はやらんだろう
MSはどうかね。MSが買う気になるとは思えんが、万が一そう思ってもOracleが売らないだろう。
となると、買うとしたらヨーロッパのソフト会社かね
日本では知られていないが資金力のあるところはあるんだろう
SAPとかは有名だが
日本国内だと楽天が手をあげる可能性はあるかも。
一気に世界企業の仲間入りできそうじゃん
三木谷好きそうじゃん
887 = :
ガッしたら1000ポイントとかねw
888 = :
BTreeを3本木にして、3木Tree にするしかないな。
890 = :
>>888
その暁にはTTreeと呼べや
891 = :
>>890
TTreeって、ROOT(http://root.cern.ch)思い出すな。
892 = :
5.1.37 innodb
text型は、MySQLコマンドブックでは最大長65535バイトとありますが、
可変長と考えてよろしいのですか?
893 = :
>>892
可変長
ところで、innodb プラグイン試してみた?
894 = :
>>893
ありがとうです。
プラグインというのは初めて知りました w
ぐぐって見たら .38からとの事。今5.1系列では40が最新だから使って見ても大丈夫そうな? w
調べてみます。
895 :
amazon rdsキター
これで面倒な管理をやらないで済むようになると思いきや
http://blog.masuidrive.jp/index.php/2009/10/27/amazon-released-rds/
ここ見ると落ちてたらしい
落ちたらあかんがな!!
897 :
チューニングはどうなってるんだろう?
結局のところ生のmysqlだから
コネクションが足りなくなったりすることもあると思うんだけど
898 :
http://www.atmarkit.co.jp/news/200910/27/aws.html
デフォルトのDBエンジンはInnoDBだが、ほかのエンジンも利用できる。
スキーマ設計、インデックス作成、パフォーマンスチューニングなども可能で、
使い勝手はネイティブのMySQLと大きく違わないという。
結局チューニングは自分でしないといけないのか
面倒くささあんまり変わらないじゃないか
900 = :
MySQL 5.1.40 の innodb で
delete from data where id is not in ( select id from list );
のように、別のリストのidに含まれない物を消そうとすると、
ERROR 1205 (HY000): Lock wait timeout exceeded; try restarting transaction
となってしまいます。
noo in (サブクエリ) の構文を最適化して書き直せませんでしょうか?
みんなの評価 : ○
類似してるかもしれないスレッド
- 【MySQL】下らねぇ質問はID出して書き込みやがれ 2 (985) - [21%] - 2012/10/17 7:16
- 【】 MySQLを買収したSunを買収したOracleを 【】 (112) - [19%] - 2023/1/22 14:15
トップメニューへ / →のくす牧場書庫について