トップページ⇒php
949コメント332KB

PHP + MySQL

■ このスレッドは過去ログ倉庫に格納されています
0001ECY NGNG
そろそろPHP + MySQLについても語ってほしい脳
077977703/04/28 01:42ID:???
英語苦手だから全部は読めねえ・・・>>778

う〜んなんとなく言わんとしてる事は伝わってくるんですけど、
結局、クラスとして隠蔽しても結局は中では
ステートメントを書く必要はあるわけで、
そこに変更が出た際はやっぱり中いじらないといけないわけで、
みたいな悩みから抜け出せないんすよ。
それはちゃんと俺が理解しきれてないからでしょうかやっぱ。

PEARのDatabase DataObjectsのSQLビルダーみたいなモデルというか
考え方でSQLステートメント自動生成っちゅうかステートメントを
完全にとは言わないまでもある程度中を意識することなくSQLを
外側から自動的にSQLステートメントを構築する仕組みができないだろうか、
という考え方と、SQLを意識して一括管理でスマートにやれる方法はないかの
2分化にどうしても行き着いちゃうみたいな。

もうちょっと詳しく>>778のとこ読んでさらに考えてみます。
あと、実際仕事ではどうしてるかとか、こんな考え方もあるよみたいなのが
あれば教えていただければ幸いです。
0780nobodyさん03/05/02 21:04ID:HZhgt5uY
ユーザーのパスワードってどうしてます?
いまは登録時にmd5()したものをDBにいれといて
認証時に入力されたパスワードをmd5()したものと
つきあわせてます。でもこれだとよくある
「パスワードを忘れた方はこちら」みたいに
パスワードを通知することができないですよね。
生のパスワードを保存しておくのは抵抗あるし・・・
0781gn355my003/05/02 21:07ID:???
忘れたらフラグ立てて仮パスワード発行でいいんでないの?
0782動画直リン03/05/02 21:10ID:iWiIA6UO
http://homepage.mac.com/hitomi18/
0783nobodyさん03/05/03 00:28ID:rRtJ13mc
PHP自体の処理ってトロトロだね。。ほんと。Cで書いた処理の5倍は掛かる。
0784nobodyさん03/05/03 00:45ID:???
>>783
インタプリタだからね。
0785☆03/05/03 02:08ID:???
>>780
どうしても生がいやならdecryptできるようなもん作ればいいんでない?
078678003/05/03 11:28ID:???
>>781
やっぱそれが一般的なのでしょうか。自分もいまはそうしてます。

>>785
そういう関数があればと思ったのですがないですよね。
やっぱ自前で実装するしかないか・・・
0787nobodyさん03/05/04 01:06ID:???
>>780
ENCODE(str,pass_str)
DECODE(crypt_str,pass_str)
0788nobodyさん03/05/08 20:23ID:YPfgT5kA
共有レンタルサーバではMySQLのユーザ権限の設定するのって不可能??


078978803/05/08 20:40ID:YPfgT5kA
だめっぽいね。こういう場合は専用サーバか自宅サーバかVPN
http://vps.rapidsite.jp/service/index.html
を選ぶことになりまつか?
0790nobodyさん03/05/09 01:35ID:???
MySQLのユーザ権限のユーザ権限がなぜ必要?
用途に応じて工夫の仕方があると思うけど…
どういう用途ですか?
0791nobodyさん03/05/09 17:41ID:Qd0hLrnm
phpmyadminに間しての操作がわかるスレかサイトないですか?
エクセルで作成したデータの取り込みについて知りたいので・・・。
よろしくです。
0792☆03/05/09 22:45ID:E81PY8iH
>>791
CSVにしてテキストファイルの読み込みでインポートではダメなん?
079379103/05/10 10:07ID:TaH04ytn
何とか上手くいったのですが・・・。
設定の仕方がイマイチよくわからないっす。
0794nobodyさん03/05/17 05:25ID:ghc51a2p
charsetで質問
with-extra-charsets=allで作成した場合
PHPからeucで接続
デスクトップぷりからUTF8で接続
同時に接続なんて出来ませんか?
0795nobodyさん03/05/17 05:41ID:???
デスクトップぷり、っていうのが何なのか知りませんが、
何か(ブラウザ、デスクトップぷり) → php → データベース のように接続した場合、
各「→」の部分で文字コードに応じて処理をすれば可能でしょう。
0796nobodyさん03/05/17 06:43ID:0rspM7nm
大阪から戻った医師が新型肺炎感染の疑い=日本滞在中に発熱−台湾

【台北16日時事】台湾衛生当局は16日、大阪へのツアー旅行から戻った台湾人医師に、
新型肺炎(重症急性呼吸器症候群=SARS)の疑いがあることを明らかにした。
日本滞在中に発熱があったが、自分で薬を服用し、一時熱が下がったという。
感染が確定した場合、日本で発症した疑いがある。
 医師は8日に大阪入りし、13日に台湾に戻った。台北市内の総合病院「馬偕紀念病院」の
救急診療部門に勤務しており、旅行前、新型肺炎患者の治療に当たった。この患者は既に
死亡している。医師は現在、同病院内で隔離治療を受けている。
http://accessplus.jp/staff/in.cgi?id=11141
0797nobodyさん03/05/18 02:23ID:???
mysql-3.23.56をソースからインスコしたんだけど
mysql_install_db.shとsafe_mysqld --user=mysql &
を実行する前にコンパイルした奴を消しちゃいまし
た。。もう一度コンパイルしなおすしかないですか?
それともバイナリとってきて、その中のやつを実行
しちゃってもいいんでしょうか。
0798nobodyさん03/05/18 05:56ID:CSE2sYnQ
apacheとPHPとMySQLを入門サイトを見ながらインストールが終わった直後のものです。
win2000sp2にインストールしました。

質問なのですが、2chのdatデータをSQLのデータに変換できたら
スレッドを越えて名前やIDで検索できたりいろいろと便利そうです。
「2ch(or2ちゃんねる) dat sql 変換」でグーグル検索をしても
情報がなかったので、あまりやっている方はいないのかもしれないのですが
これを実現するには何を勉強したらよいでしょうか?

自分なりに考えたのですが、perlやrubyなどのテキスト処理言語と
mySQLが最低限必要で、ブラウザから便利に検索するには、それらに加えて
PHPやapacheも必要なのではないかと考えたのですが、いかがでしょうか?

もしよろしかったら、ご指導お願いいたします。
0799_03/05/18 06:26ID:???
  ∧_∧    http://togoshi.ginza.st/mona/
 ( ・∀・)/< こんなもの見つけたっち♪
http://togoshi.ginza.st/mona/mona10.html
http://www.togoshi.ginza.st/mona/mona08.html
http://togoshi.ginza.st/mona/mona05.html
http://www.togoshi.ginza.st/mona/monaz07.html
http://togoshi.ginza.st/mona/mona06.html
http://www.togoshi.ginza.st/mona/mona02.html
http://togoshi.ginza.st/mona/mona04.html
http://www.togoshi.ginza.st/mona/mona03.html
http://togoshi.ginza.st/mona/mona01.html
http://www.togoshi.ginza.st/mona/mona09.html
0800nobodyさん03/05/18 06:50ID:???
>798
負荷により不可。
080179803/05/18 07:04ID:???
すみません。書き忘れました。
個人的な利用を考えています。

公開できればもっと良いと考えていますが、とりあえずは一人用のものが
できれば・・と考えています。
0802bloom03/05/18 07:08ID:rGbr42DC
http://homepage.mac.com/ayaya16/
0803かおりん祭り03/05/18 08:08ID:???
〜oノハヽo〜  http://togoshi.ginza.st/kaorin/
  ( ^▽^) < こん なのございまーす♪ 
http://togoshi.ginza.st/hankaku/jaz06.html
http://www.togoshi.ginza.st/hankaku/jaz02.html
http://togoshi.ginza.st/hankaku/jaz05.html
http://www.togoshi.ginza.st/hankaku/jaz08.html
http://togoshi.ginza.st/hankaku/jaz01.html
http://www.togoshi.ginza.st/hankaku/jaz10.html
http://togoshi.ginza.st/hankaku/jaz04.html
http://www.togoshi.ginza.st/hankaku/jaz03.html
http://togoshi.ginza.st/hankaku/jaz09.html
http://www.togoshi.ginza.st/hankaku/jaz07.html
0804動画直リン03/05/18 09:08ID:rGbr42DC
http://homepage.mac.com/hitomi18/
0805紺野あさみ03/05/18 13:24ID:???
  ∋8ノノハ.∩   http://togoshi.ginza.st/konno/
   川o・-・)ノ <先生!こういうのがありました!
http://www.togoshi.ginza.st/konno/konno01.html
http://togoshi.ginza.st/konno/konno04.html
http://www.togoshi.ginza.st/konno/konno10.html
http://togoshi.ginza.st/konno/konno07.html
http://www.togoshi.ginza.st/konno/konno08.html
http://togoshi.ginza.st/konno/konno05.html
http://www.togoshi.ginza.st/konno/konno03.html
http://togoshi.ginza.st/konno/konno06.html
http://www.togoshi.ginza.st/konno/konno02.html
http://togoshi.ginza.st/konno/konno09.html
0806nobodyさん03/05/18 14:39ID:NCFj4xES
日本の名物は過労死
佐川とロジテムどっちがひどい?
田中真紀子と親密な日本ロジテム(日清系 上場企業 みずほの融資先)の
子会社せいも素(みずほの融資先)で
サービス残業させすぎの過労による自殺者が出たんだってね。
http://www.samos.co.jp
http://tmp.2ch.net/test/read.cgi/company/1046775680/l50
.      / ̄\  +.  ∧_∧アハハハ テンゴクヘイッチャウヨー  +
  イクナヨー( ´∀`)    (´∀` )  
      (つ  つ     (つ  つ■
.   +  ( ヽノ      ( ヽノ      
0807nobodyさん03/05/18 14:48ID:fx1+Jhvi
PHP、MySQL共に初心者ですが、下記がちょっとわかりません。

$sql = "UPDATE user SET namae = 'hayashi' WHERE no = '100';
$result = mysql_query($sql);

MySQLに接続するコードと、上記のコードを書いたphpファイルを
作ってみたのですが、レコードが更新されません。
なぜでしょう??だれかおしえてください〜〜
0808nobodyさん03/05/18 14:58ID:???
>>807
だぶるくおーてーしょん、が抜けとる。
080980703/05/18 15:02ID:fx1+Jhvi
すいません、事故解決しますた。
no ='100' → no = 100 にしたらできました。
なんでかよくわからんですが・・・。
ダブルクオーテーションはこっちに書き忘れただけです、すんません。
0810bloom03/05/18 15:08ID:rGbr42DC
http://homepage.mac.com/ayaya16/
0811nobodyさん03/05/18 15:27ID:???
>>809
データ型の概念が分かっていないね。
クオーテーションで括ったら、文字型と判断されるよ。
0812nobodyさん03/05/18 15:33ID:???
データ型に関してはphpは内部でけっこう融通利かせてくれるからね。
早いうちにミスして気づいていかないと。
081380703/05/18 15:46ID:fx1+Jhvi
ですね、データ型の概念がわかってないのが問題っぽいですね。
namae = 'hayashi' のhayashiのところを 変数を使いたい場合、
どうすりゃいいんでしょ汗?
色々やってみましたが、駄目でした。
0814nobodyさん03/05/18 15:53ID:VD7gKE48
http://homepage3.nifty.com/coco-nut/
.      / ̄\  +.  ∧_∧アハハハ テンゴクヘイッチャウヨー  +
  イクナヨー( ´∀`)    (´∀` )  
      (つ  つ     (つ  つ■
.   +  ( ヽノ      ( ヽノ
0815nobodyさん03/05/18 15:53ID:???
$sql = "UPDATE user SET namae = '".$name."' WHERE no = 100";
普通こうするんじゃない?
081680703/05/18 16:05ID:fx1+Jhvi
・・・なるほど、やっとうまくできました。
できればなぜそうなるのか教えてほしいとこですが、
ちょと自分で調べてきます。う〜〜んもっと勉強せねば。
081780703/05/18 16:07ID:fx1+Jhvi
言い忘れてました。
教えてくれた人ありがとうございました。精進に努めます
0818_03/05/18 16:14ID:???
  ∧_∧    http://togoshi.ginza.st/mona/
 ( ・∀・)/< このURL見つけたっち♪
http://togoshi.ginza.st/mona/mona10.html
http://www.togoshi.ginza.st/mona/mona08.html
http://togoshi.ginza.st/mona/mona05.html
http://www.togoshi.ginza.st/mona/monaz07.html
http://togoshi.ginza.st/mona/mona06.html
http://www.togoshi.ginza.st/mona/mona02.html
http://togoshi.ginza.st/mona/mona04.html
http://www.togoshi.ginza.st/mona/mona03.html
http://togoshi.ginza.st/mona/mona01.html
http://www.togoshi.ginza.st/mona/mona09.html
0819nobodyさん03/05/18 17:22ID:???
>>815
$sql = "UPDATE user SET namae = '${name}' WHERE no = 100";
これでいいんじゃない?
{ } はなくてもいいが必要な場合もあるし、視認性のためにいつも
つけることにしてる
0820nobodyさん03/05/18 18:23ID:???
>>807安心しろ、俺もサパーリワカラソ。
0821nobodyさん03/05/18 19:40ID:ai9Y3lhL
MySQLに15万件のデータ入れたらぶっ壊れちゃったよ・・・
MySQLってこんな物なの?
0822nobodyさん03/05/18 19:44ID:???
ぶっ壊れたってやっぱり火を噴いたり入力したデータがとても口では言えないような物に置き換わってたり?
0823nobodyさん03/05/18 19:57ID:ai9Y3lhL
>>822
MySQLから火は噴くかよ(w
入力したデータがバグっちゃったんだよ。
0824nobodyさん03/05/18 20:32ID:???
なーんだスクリプトのバグか。
0825nobodyさん03/05/18 22:14ID:???
>821
つか、君の設計が「そんなもん」かと。ちゃんと設計しようよ。

あとDB(データの方)の信頼性は、使ってるファイルシステムにも依存する。
DBデータも単なるファイルでっせ。
0826nobodyさん03/05/18 22:46ID:uOiOSJ6c
いろいろやってるうちにMySQLが起動しなくなったよ。
やばいな・・・
0827私のお金が増えている03/05/18 23:35ID:c9BgLl5+
不況なんか吹っ飛ばせ!
ここをみてくださいね。
http://www.c-gmf.com/index3.htm
http://www.c-gmf.com/index2.htm
http://www.c-gmf.com/mail.htm
0828nobodyさん03/05/18 23:37ID:uOiOSJ6c
やっと起動
ホッ
0829nobodyさん03/05/19 01:40ID:???
MySQLインスコしてみたんだけど
% mysql -u root mysql
mysql> SELECT host,user,password FROM user;
+-----------+------+----------+
| host | user | password |
+-----------+------+----------+
| localhost | root | |
| myhost | root | |
| localhost | | |
| myhost | | |
+-----------+------+----------+

userが空になってる行はどういう意味があるの?
0830nobodyさん03/05/19 03:46ID:???
>829
匿名ユーザ。

ビルトインユーザとして入ってると思うけど、匿名ユーザとしての認識のないまま
放置するのは危険なので削除すべし。意図して匿名ユーザを作るのは構わんが、
その場合、mysqlのユーザの認識優先順位とか調べた上で作るべし。
0831nobodyさん03/05/19 03:55ID:???
>>830
なるほど。サンクス。postgresと違ってディフルトの
設定が危険なことになってますね。
GRANTやREVOKEってのは user,db,hostテーブルを操作
するラッパーみたいなものなんですか?セッション変数
をMySQLで管理しようと思って導入してみた次第です。
関係ないけどPHP Blackbookにのってるsession handler
のコードは役立ちました。
0832nobodyさん03/05/19 08:30ID:???
 MySQLがどうこうって(Postgresもそうだけど)文句言ってるやつって、たいていの場合
Primary key指定せずに大量のデータ(10万レコード単位のオーダー)を動かそうとして
いるんだけど、世の中の手引きってindex作るっつー基本すら説明してないのかなぁ。
 あるいはWin"doze"のアプリみたいにマニュアルやReadMeすら読まずに動くと
思ってる昆虫みたいな連中なのか。
0833nobodyさん03/05/22 00:00ID:???
インデックスの件やけど、中間一致検索をうまくやる(HDに負担かけない)方法ってなんかないですかい?
FULLTEXTインデックスも微妙に日本語対応してないみたいやし・・・
0834山崎渉03/05/22 01:55ID:???
━―━―━―━―━―━―━―━―━[JR山崎駅(^^)]━―━―━―━―━―━―━―━―━―
0835nobodyさん03/05/22 23:24ID:???
>>833
ナマズに食わせる
0836nobodyさん03/05/23 02:21ID:???
>>835
やはりナマズっきゃないのかな・・・

公式のドキュメント(Mysqlはどのようにインデックスを使用するか)にこんなのがあったけど

MySQL 4.0 does another optimisation on LIKE.
If you use ... LIKE "%string%" and string is longer than 3 characters,
MySQL will use the Turbo Boyer-Moore algorithm to initialise the pattern for the string and then use this pattern to perform the search quicker.

これはインデックス作れば最初にワイルドカードつけたあいまい検索でもそれなりに速いということ?
それともインデックス関係無しに最適化されるという話でつかね?
0837nobodyさん03/05/23 09:02ID:???
>836
 その一文節前に

以下の SELECT 文はインデックスを使用しません:

って書いてあるじゃん・・・
0838nobodyさん03/05/23 09:06ID:???
>836
Boyer-Mooreを使って検索するというのなら、インデックスを使わない場合の
LIKE "%string%"の検索の舐め方だと思う。あと、どのみち%string%のような
中間一致にはインデックスは使われない。

折れもkakashi使ってインデックス相当のフィールドを生成して
そっち使って検索してる部分もあるが、"分かち書き"で取りこぼしたりするのは
必至なので精度よりも速度が求められるシチュエーションだけだね。
普通LIKE "%string%"の全舐め。楽だし(笑
083983803/05/23 09:09ID:???
え、茶筅の方が精度高いだろって?
諸事情により茶筅使えないんですわ。
0840nobodyさん03/05/23 22:06ID:???
レスサンクスコ
でも茶筅もカカシも難しそう(つかめんどくさそう)でつね
当面はあいまい検索で我慢して、少しづつ勉強する事にしまつ
0841nobodyさん03/05/23 23:52ID:KUDYp0Dt
WinXP + AnHTTPD v1.41g + PHP v4.3.1 + MySQL v4.0.13
という環境で質問です

インストールは全て問題なくできて、PHPもMySQLもそれぞれ
単独での動作は確認できたのですが
試しにphpMyAdmin v2.5.0を入れてPHPからDBにアクセスしてみようとしたら
動作上は何も問題ないのですが、なぜかDBにアクセスするたびに
ビープ音(内臓スピーカーから出る方)が鳴り狂います

鳴り狂うわりには操作自体は全て問題なく行えるので変だなぁと思って
<? php
  $userlink = mysql_connect("localhost", "<ユーザー名>", "<パスワード>");
  mysql_select_db("test_DB", $userlink);
  $result = mysql_query("SELECT * FROM test_table", $userlink);
  while ($myrow = mysql_fetch_row($result)) {
    echo "$myrow[1]";
  }
?>
みたいなコードを書いて実行してみたら
Parse error: parse error, unexpected T_VARIABLE in D:\HTTPD\public_html\test.php on line 2
なんていうエラーが返ってきてconnectすらできませんでした
#phpMyAdminからは日本語データ入力さえも全部正常に動いているのに・・・

エラーコードやらPHP+MySQL+Winやらでググってみても
そんな症状が報告されている例は見つけられず、途方に暮れています
どなたか何が問題なのかとっかかりだけでもわかるかたいらっしゃいませんか?
084284103/05/23 23:57ID:???
補足
ビープが鳴り狂うくせにどのログにもエラーが残らないのでマジで泣きそうです
0843nobodyさん03/05/24 00:41ID:???
>>842
<? php の間にスペースはいってない?
0844nobodyさん03/05/24 01:24ID:???
>>843
は・・・はずかしい・・・おっしゃるとおりです
しかしピーピー鳴るのは解決せず

ちなみに先のスクリプトだとビープ音は2回
phpMyAdminで、$cfg['Servers'][$i]['user']と['password']だけ設定した場合も2回
ところが['controluser']と['controlpass']も設定すると4回鳴る事がわかりました
わかったところで何故なのかは未だ不明ですが・・・

コマンドプロンプトからは何の問題も無く(ビープも無く)操作できます
084584103/05/24 13:34ID:???
結局Apacheを導入したらビープは鳴らなくなりました
AnHTTPDのせいだったのね・・・
PATH_TRANSLATEDを使うとかの設定もしたのにナァ
0846nobodyさん03/05/26 18:20ID:ruGAuzSz
初歩的な質問で申し訳ありません。
Mysqlで、テーブルロックせずに同時アクセスがあった場合データが消滅することってあります??
0847nobodyさん03/05/27 01:33ID:???
あれ?そうだったっけ?
漏れはロックなんて使ってないけど。
つかロックかけようとするとクエリーがエラーになる。
ユーザーにはINSERT,UPDATE,SELECT権限与えてるけど、
これじゃあアカンのかしら?

>>846
innodbなら行単位でのロックが自動でかかるんじゃないか?
Myisamは必要っぽいけど。
0848nobodyさん03/05/27 01:53ID:PRpkR2kf

(´―`)y━~~タバコとアダルトは二十歳になってから☆
http://homepage3.nifty.com/coco-nut/
0849nobodyさん03/05/28 22:07ID:???
おっす
0850nobodyさん03/06/01 20:40ID:Xxw6SumH
phpでmysqlを使っています。
この時間帯、
too many connection
が出まくることを発見しました。
mysql_connect();
mysql_select_db();
ソースのこのあたりです。
どうすれば解決できますか?
0851nobodyさん03/06/01 23:30ID:???
>850
サーバを変える。空いてるところに
0852nobodyさん03/06/02 02:50ID:VH23vLoj
>>851
レン鯖なので変えられません。
http://www.mysql.gr.jp/jpdoc/3.23.x/manual.ja_MySQL_Optimization.html#Server_parameters
ここを見ながらmax_connectionを設定しようと思うのですが、
まず説明の中のmysqldという実行ファイルがない。
mysqlで--helpしても
max_connectionは出てこないし。
いったいどうすれば…
085385203/06/02 03:18ID:???
自己レスですができますた。
自分の環境では
safe_mysqld
がそれに当たっていて、一旦止めてから
safe_mysqld -O max_connections=500 &
としました。
mysqladmin variables
で確認したら設定できているよう。
これで解決できるのかどうかはまだ不明ですが。
0854nobodyさん03/06/03 17:17ID:1aVIbVtl
>852
何も書いてなかったんでありがちな、
"無料"で共用サーバ使ってて文句たれてんのかと思ってた…わりぃ

MySQLもPHPも自分のコントロール下にあるなら、php.iniの
module settingの[MYSQL]の項にもコネクションに関する設定があるので
そちらも見直してみてください。最近のPHPのデフォルト設定だと制限無し
になってるのですが、それに制限が掛かっているかもしれません。
0855nobodyさん03/06/03 17:49ID:1aVIbVtl
あ、あとmax_connectionsを増やすというのは、アタリ。
デフォルト(あらためて指定しない場合)は100とかなり小さいので
全然設定を見直してないと直ぐに上限に達します。

起動パラメータとして直接指定しても構いませんし、
設定ファイルmy.cnfやmy.iniに記述しても構いません。
#私はcnfで1024を指定しています。
0856nobodyさん03/06/03 17:56ID:???
こっちも参照
http://www.mysql.gr.jp/jpdoc/3.23/manual.ja_Problems.html#Too_many_connections
0857nobodyさん03/06/04 01:42ID:???
mysqldump --helpコマンドを打っても反応なし
これはなんかインストールしてなかったからでしょうか?
ちなみにLINUXのRPMバージョンのServerとClient programsとLibraries and header filesを入れてまつ
0858nobodyさん03/06/04 02:00ID:+AMYXFHe
みてね♪
http://www1.free-city.net/home/s-rf9/page006.html
0859nobodyさん03/06/04 04:21ID:???
>857
ClientのRPMに入ってるはずだけどねぇ。RPMはどこの?
取り合えずpathの影響かも知れんから、ダイレクトに叩いてみたら?
0860nobodyさん03/06/05 00:31ID:???
>>859
MySQL.comで入手した最新のRPM(4.0.13)でつ
それほど弄ってるわけではないので不思議でたまらないでつ
・・・ところでダイレクトに叩くとは?
mysql -u root -p DBname
を使わない方法でつか?
0861nobodyさん03/06/05 02:12ID:???
>860
RPMをインストールした時に置かれることになっている場所を
直接指定して叩くということ。

MySQL ABのMySQL-client-4.0.13-0.i386.rpm拾ってきてみて、中身見てみたけどたけど
# rpm -qlp MySQL-client-4*.rpm
/usr/bin/msql2mysql
/usr/bin/mysql
/usr/bin/mysql_find_rows
/usr/bin/mysql_waitpid
/usr/bin/mysqlaccess
/usr/bin/mysqladmin
/usr/bin/mysqlbinlog
/usr/bin/mysqlcheck
/usr/bin/mysqldump
/usr/bin/mysqlimport
/usr/bin/mysqlshow
/usr/share/man/man1/mysql.1.gz
/usr/share/man/man1/mysqlaccess.1.gz
/usr/share/man/man1/mysqladmin.1.gz
/usr/share/man/man1/mysqldump.1.gz
/usr/share/man/man1/mysqlshow.1.gz
入ってるけど?

/usr/bin/mysqldump --helpと叩いて味噌。
その前に「rpm -qa | grep -i mysql」して、
MySQL-clientパッケージがちゃんと入ってるか見た方が良いかも
0862nobodyさん03/06/05 20:06ID:???
>>861
で、できますた!
なぜ動かなかったのだろう?
と、とりあえずこれからゆっくり原因を研究してまつ。
はやくタコ状態を脱出しないと・・・
とにかくめっちゃサンクスコでつ!!!
0863nobodyさん03/06/06 13:23ID:9Sig5kBB
mysqlで
4000くらいのレコードのソートって結構負荷かかります?
それでランキングの表示をしていたんですが、
そこの呼び出しが集中(1時間に1000くらい?)したら
マシンがほとんど無反応になる(pingは反応するがsshでも入れない)
んですが。
連鯖でメモリは64Mだっと思います。メモリが少なすぎるんですかね?

086486303/06/06 13:29ID:9Sig5kBB
しかもその状態が半日続いたりします
その後遺症の方がでかいです
0865nobodyさん03/06/06 14:02ID:???
んなこたない。
テーブル構造と使ってるSQL書いてみ。
メモリは確かに少ないかもね。共有鯖かい?
086686303/06/06 21:40ID:9Sig5kBB
専鯖です
columnsは
int(10) unsigned
varchar(20)
varchar(60)
varchar(8)
varchar(40)
varchar(200)
tinyint(4)
varchar(40)
text
text
varchar(40)
varchar(40)
tinyint(4)
int(10) unsigned
varchar(15)
varchar(15)
datetime
varchar(255)
で、
select counter from data_T order by counter desc
これをコマンドで打ち込むと11秒かかりました。
こんなものでしょうか?
0867 03/06/06 22:27ID:???
>>863
DBの使うリソースが心配だったら、cronなんかで定期的にランキングを
ファイルに出力させて、そちらにアクセスさせる。
っていう方法で逃げるってダメ?
0868nobodyさん03/06/07 00:46ID:???
メモリ64Mから察するに鯖の性能自体に問題があるような気が・・・

CPUが266MHZとかATAのHD一つしか付いてないとか・・・
0869nobodyさん03/06/07 01:48ID:???
 つうか、プライマリーキーがないじゃん・・・
0870nobodyさん03/06/07 10:54ID:???
my.cnfの設定項目で「table-cache 512」ってのがあるけど、
これって、テーブル(最大512個)をそのままメモリにぶち込んでくれるってこと?
ハードディスクの負担が軽くなると嬉しいけど。
087186303/06/07 18:02ID:???
>>867
それがベストですね。
そんなにリアルタイム性が要求される種類のランキングでもないので、
1日一回更新にします。
さっき解析みたら11秒かかるソート処理が1分に6回くらい呼ばれていました。
プロセスが別だと思うので単純に足し算はできないですが、
多い時にはそれがもっとあったはずなので…。
>>868
3年くらい前に借りた鯖なのでスペック的には結構しょぼいかもしれません。
266MHZはいくらなんでもないと思いますが…。
>>869
一番上のint unsignedがプライマリキーになっています。
0872nobodyさん03/06/07 22:39ID:???
>>863
そのcounterとかいうカラムにインデックス張ってる?
0873nobodyさん03/06/07 23:09ID:???
つかMySQL4.0ならクエリーキャッシュって手があるんだが・・・
もっとメモリをのせれ
087487303/06/07 23:14ID:???
whereがなくデータを全部取得してるから、
インデックスの効果も薄いような・・・
データ取得途中でメモリの空き容量がなくなって、
スワップ起きてるんじゃないかな?
0875nobodyさん03/06/09 17:12ID:7gQlaCxU
他鯖のMySQLから、
mysql_query()でselectした場合、
その時点ですべてのデータが送受信されるのでしょうか?
それともその時点ではポインタのような情報のみ送られて、
mysql_fetch_row()などした時だけ、その分のデータが送られるのでしょうか?
0876nobodyさん03/06/10 23:45ID:???
>>875
php_mysql.c,v 1.174.2.12読んだ感じでは、そのままコンパイルすると
PHPのmysql_query()関数でクエリ実行が成功したら、
MySQL APIのmysql_store_result()してるみたいなんで
PHP-MySQL間では結果セット全てを取ってきてますな。

"他鯖"っても同じサーバで動いてようと、
PHPから見りゃMySQLは"別"なんで自/他だろうが変わんないよ
0877nobodyさん03/06/11 11:09ID:eWSXWUXf
Mysqlで
SELECT * FROM hogetable WHERE hoge='mona'
としても
SELECT * FROM hogetable WHERE hoge='mona '
としても同じ結果が帰ってくるのですが,
語尾のスペースもちゃんとみるようにするにはどうしたらよいですか?
0878_03/06/11 11:16ID:???
http://homepage.mac.com/hiroyuki44/hankaku06.html
0879nobodyさん03/06/11 13:09ID:???
質問なんですが
アドレス帳を作るときに、
電話番号というフィールドを作るのですが、
電話番号を複数持っている場合がありますよね。
こういうときはどういった処理をさせればいいのでしょうか。

単純に電話番号1、電話番号2、電話番号3・・・・
とフィールドをいくつか作るしかないのでしょうか。
■ このスレッドは過去ログ倉庫に格納されています