のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,062,312人
昨日:no data人
今日:
最近の注目
人気の最安値情報

    私的良スレ書庫

    不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
    ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

    元スレMySQL 総合 Part17

    mysql スレッド一覧へ / mysql とは? / 携帯版 / dat(gz)で取得 / トップメニュー
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : - 2004 + - config + - Warning + - 経過時間 + 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    レスフィルター : (試験中)
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
    151 : NAME IS - 2010/01/04(月) 11:01:24 ID:??? (-29,-30,-157)
    最近 MySQl (5.1.41) が

    100104 10:48:15 InnoDB: Error: page 1 log sequence number 19962114575
    InnoDB: is in the future! Current system log sequence number 3012747198.
    InnoDB: Your database may be corrupt or you may have copied the InnoDB
    InnoDB: tablespace but not the InnoDB log files. See
    InnoDB:http://dev.mysql.com/doc/refman/5.1/en/forcing-recovery.html

    のようなエラーをログに吐き、しばらくすると止まってしまいます。
    メッセージのリンクを読んで、
    innodb_force_recovery = 4
    で起動して、全dumpとリストアをかけたのですが、それでも直りません。
    解決策をご存じの方いらっしゃいませんか?
    153 : NAME IS - 2010/01/04(月) 18:14:26 ID:??? (+6,+8,-20)
    追加の時、数字を指定しなくても
    自動で一番後ろに追加することってできないの?
    154 : NAME IS - 2010/01/04(月) 20:20:56 ID:??? (-25,-30,-55)
    >>151
    dumpして、
    データベースをdropして
    mysqldを停止して
    ibdata1とib_logfile*を削除して
    innodb_force_recoveryを外して
    mysqldを起動して
    リストア。
    155 : NAME IS - 2010/01/04(月) 21:50:23 ID:??? (-19,-12,-2)
    MySQLを救え!
    http://www.helpmysql.org/ja/
    157 : NAME IS - 2010/01/04(月) 22:25:46 ID:??? (+29,+29,-38)
    >>154
    ありがとうございます。
    レスを頂いた直後から作業を開始しましたが、リストアって時間かかりますね。
    でも、ログエラーは(今のところ)出ていません。
    このままうまくいくことを願いつつ、お礼申し上げます。
    158 : NAME IS - 2010/01/04(月) 23:23:10 ID:??? (+18,+25,-5)
    追加と更新って、どう違うんだ?
    160 : NAME IS - 2010/01/04(月) 23:49:15 ID:??? (+22,+29,+0)
    それを聞いてるんじゃん
    161 : NAME IS - 2010/01/05(火) 18:21:18 ID:??? (-26,-29,-70)
    MySQL5.0.45でストアドを書いてるんだけど、
    エラーが起こったときに「HANDLER FOR SQLEXCEPTION」でエラーが起こったことはわかるけど、
    どんな内容のエラーが起こったのか取得できなくて困ってます。
    エラーの内容を取得する方法って有りますか?
    162 : NAME IS - 2010/01/06(水) 00:21:44 ID:??? (+27,+29,-41)
    全角でテーブル名とかカラム名とか使っちゃいけない感じ?
    いちいちバッククォートだかアクサンだかで区切るのめんどい。
    SQLITEはそこら辺融通が利いたんだけどなあ。
    163 : NAME IS - 2010/01/06(水) 00:33:27 ID:??? (-6,-8,-14)
    >>162
    マジで全角使いたいの?
    164 : NAME IS - 2010/01/06(水) 01:04:45 ID:??? (+37,+29,-90)
    >>163
    テーブル設計するときは大体全部の項目が全角じゃん。
    postgreとかSQLITEとかSQLServerだとそのまま流し込むのが一般的じゃん。
    ドキュメントの手間省けるし。何よりオレがそれに慣れきってる。
    だから今更全部エスケープとか正直辛い。なんか回避方法があれば是非。
    165 : NAME IS - 2010/01/06(水) 02:43:35 ID:??? (+25,+27,-20)
    PG視点とSE視点の違いってこういうことなのかな、と思った
    166 : NAME IS - 2010/01/06(水) 07:53:00 ID:??? (-27,-30,-87)
    DELETE + EXISTS の組み合わせの SQL って使えないですよね?
    DELETE FROM T1 A
    WHERE EXISTS (SELECT * FROM T1 B WHERE A.C1 = B.C1)
    みたいなのってエラーになりますよね?
    167 : NAME IS - 2010/01/06(水) 12:35:20 ID:??? (+32,+29,-4)
    >>164
    俺、その職場じゃなくて良かったわ。
    168 : NAME IS - 2010/01/06(水) 13:51:30 ID:??? (+22,+29,-1)
    これだから非英語圏はあああああああああ
    170 : NAME IS - 2010/01/06(水) 21:35:45 ID:??? (-16,-29,-53)
    MSSQLや、Access使いは全角派が圧倒的だな。
    多分プログラムを書かない人たちだからかな。
    個人的にはマジでやめてほしい。
    Oracle派は半角大文字だね。
    MySQL、PostgreSQL、SQLite派は半角小文字だな。
    171 : NAME IS - 2010/01/07(木) 02:02:18 ID:??? (+25,+29,-41)
    >>170
    英単語で適切なカラム名を決められないときは、
    何を入れるべきなのか分かってないことがほとんどだと思う。
    たいていあとで泣きを見る。

    unicode の問題とかは、些細なこと。
    172 : NAME IS - 2010/01/07(木) 02:03:35 ID:??? (+25,+29,-31)
    >>170
    そんなに毛嫌いするほどのものでもないだろ
    クライアントの強い要望でそういう設計したことあるけど
    あれはあれでおもしろくて便利だったぞ
    173 : NAME IS - 2010/01/07(木) 16:09:43 ID:??? (-27,-30,-192)
    UNIQUE属性を付けるとめちゃくちゃ行のサイズが膨れるんだけど、どして?
    CREATE TABLE ユーザ(
    ID SERIAL,
    ユーザID VARCHAR(30) NOT NULL UNIQUE,
    パスワード CHAR(32) NOT NULL,
    メールアドレス VARCHAR(255) NOT NULL UNIQUE,
    ユーザ種別 INTEGER NOT NULL DEFAULT 1
    );
    たったこれだけのテーブルなのに一行が2300バイトとかそれくらい行きやがる。
    制約としてユニークがほしいだけなのに、なんかインデックス作成されてるし。
    どうすりゃええのん。
    174 : NAME IS - 2010/01/07(木) 18:51:17 ID:??? (+26,+28,-39)
    ユニークかどうか調べるのにインデックスが必要なんだ
    これはMySQL以外でも同じ
    メールアドレスにUNIQUEつけるのはかなり厳しい
    175 : NAME IS - 2010/01/07(木) 19:01:22 ID:??? (+26,+28,-4)
    メールアドレスって、そもそもユニークなもんじゃないの?
    176 : NAME IS - 2010/01/07(木) 19:11:43 ID:??? (-18,-21,-43)
    よく考えたらメールアドレスは変更される可能性もあるから、
    UNIQUEは外してメールアドレス管理テーブル作ったほうがいいと判明した。
    (変更の際と登録の際にユニークチェックすればいい)
    ありがとう。ユニークはIDだけにしておくわ。
    177 : NAME IS - 2010/01/08(金) 01:58:04 ID:??? (-17,-30,-123)
    MySQL の勉強を始めました。
    phpMyAdmin にはじめから登録されている データは バッククォートを使用しない記述で成功するのですが(SELECT * FROM pma_history)
    自分で作成したデータは バッククォートを使用しないと失敗してしまいます。(SELECT * FROM `pma_history`)
    バッククォートを使用しないようにするにはどうしたらよいのでしょうか?

    又、バッククォートを使いたい場合に ` をコピー&ペーストでやっているのですがキー入力で使う場合には
    どう入力すればよいのでしょうか?

    MySQLのバージョンは 5.1.37です。
    初歩的で申し訳ありませんがご教授お願いします。


    179 : 177 - 2010/01/08(金) 19:30:56 ID:??? (+22,+29,-1)
    >>178
    ありがとうございます。
    これで記述が楽になります。
    182 : 180 - 2010/01/08(金) 21:57:45 ID:??? (+17,+29,+0)
    謝謝
    183 : NAME IS - 2010/01/09(土) 21:02:05 ID:??? (-27,-30,-77)
    LAN内で別PCのmysqlにアクセスしようとしたら
    Access denied user 'root'@'mac-mini'
    と表示されてしまいます。

    mysqlテーブルでは
    Host:% User;root
    も設定してあります。

    なぜ接続できないのでしょうか、パスワードもあっています。
    185 : NAME IS - 2010/01/09(土) 23:53:53 ID:??? (-29,-29,-54)
    LEFT JOINしておいて右側のテーブルに条件を差し込むのは筋が悪い

    じっくり考えたら、B.valueの条件で検索する場合、
    LEFT JOINじゃなくてINNER JOINで良かったりしない?
    そうすればAの条件がrefになる
    188 : NAME IS - 2010/01/10(日) 03:59:30 ID:??? (-27,-30,-67)
    テーブルにDateTime型で定義された列が存在している場合に、
    2つの特定レコードの登録日を比較し、
    経過分数をSQLで算出するにはどうすれば良いでしょうか?
    ※MySQL5.0

    具体的には次の通り時間が①②とあった場合に、
    ①から②までの間の経過時間として 5分 という値が欲しいです。

    時間①
     2010-01-10 10:10:00

    時間②
     2010-01-10 10:15:00
    190 : NAME IS - 2010/01/10(日) 07:26:36 ID:??? (-24,-18,-21)
    >>187
    特定のデータベースにしかアクセス出来ないようにして、create権限を与えたら良いのでは?
    192 : NAME IS - 2010/01/10(日) 22:57:54 ID:??? (-27,-30,-78)
    MySQLのSQLで経過時間をtimediff関数を使用して算出しているのですが、
    取得された結果のうち

    ・時間
    ・分
    ・秒

    のみを取得するにはどうすれば良いでしょうか?

    SELECT
      -- 時間
      -- 分
      -- 秒
      -- 時間:分:秒 の取得
      TIMEDIFF( NOW(), REGIST_DATE_TEST )
    FROM
      TEST_TABLE
    193 : NAME IS - 2010/01/10(日) 23:51:51 ID:??? (-25,-30,-61)
    mysql> select now(),hour(now()), minute(now()), second(now());
    +---------------------+-------------+---------------+---------------+
    | now() | hour(now()) | minute(now()) | second(now()) |
    +---------------------+-------------+---------------+---------------+
    | 2010-01-10 23:51:32 | 23 | 51 | 32 |
    +---------------------+-------------+---------------+---------------+
    1 row in set (0.00 sec)
    194 : NAME IS - 2010/01/11(月) 00:05:08 ID:??? (+0,+5,+2)
    >>193
    ありがとうございました。
    197 : NAME IS - 2010/01/11(月) 10:19:14 ID:??? (-27,-30,-81)
    WinXP MySQL 5.1です。
    前スレでinnodb_file_per_tableについて聞いた者ですがまた
    一つ教えてください。

    dataがAll UsersのApplication Dataに出来ているのですが、これを
    例えばd:\data\database\~に指定することは出来ませんか?

    my.iniには
    #*** INNODB Specific options ***
    innodb_data_home_dir="D:/Data/DataBase/"
    という指定はしているのですが。
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / mysql スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : - 2004 + - config + - Warning + - 経過時間 + 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

    類似してるかもしれないスレッド


    トップメニューへ / →のくす牧場書庫について