タグ

MySQLに関するVitSymtyのブックマーク (21)

  • MySQL :: MySQL 8.0 リファレンスマニュアル :: 11.7 データ型のストレージ要件

    ディスク上のテーブルデータのストレージ要件は、複数の要因によって異なります。 別々のストレージエンジンは異なる方法でデータ型を表し、ローデータを格納します。 カラムか行全体のどちらかでテーブルデータを圧縮できますが、テーブルまたはカラムのストレージ要件の計算が複雑になります。 ディスク上のストレージレイアウトが違っていても、テーブル行に関する情報を通信および交換する内部 MySQL API は、すべてのストレージエンジンにわたって適用される一貫したデータ構造を使用します。 このセクションでは、データ型の固定サイズ表現を使用するストレージエンジンの内部形式およびサイズを含め、MySQL がサポートするデータ型ごとのストレージ要件に関するガイドラインおよび情報について説明します。 情報はカテゴリまたはストレージエンジンごとに示します。 テーブルの内部表現の最大行サイズは 65,535 バイトで

  • MySQLのmy.cnfファイルサンプル

    MySQLのバージョン インストールされたMySQLのバージョンは以下のようになります。 名前 バージョン ダウンロード元 my.cnfサンプル 以下のサンプルを参照して、my.cnfファイルを作成してください。 # このファイルは MySQL 5.6を基準として作られてあります。 # http://dev.mysql.com/doc/refman/5.6/en/server-system-variables.html を参照しました。 [mysqld] ##-------------------------------------------------------------------- # mysqldの基設定 ##-------------------------------------------------------------------- # id は 1 から 2^

    MySQLのmy.cnfファイルサンプル
  • MySQL バイナリログを使ったデータリカバリ | Ore no homepage

    目黒川の桜きれいですね〜(*^^*)…なーんてガラじゃないことを言いたくなるくらい良い咲きっぷりでしたよ、エエ。で、来週末、花見に行くんだけど、まだ散らないでほしいっすねー。 えーっと、久しぶりにMySQLの記事。binlogを使ったリストア手法について。ネットを漁るとMySQLの運用に関する記事は多くヒットするんだけど、障害からのデータリカバリ、特にロールフォワードを扱った記事が思ったより多くない。おれは運が良いのか悪いのかMySQLのデータリカバリをしなければならないような局面に何度か直面しているので、手順について書いてみようかな、と。ここではMySQL〜5.5を対象にしている。直近での最新のメジャーバージョンはMySQL5.6なんだけど、おれはまだ5.6について大して知らない。5.6ならもっとイケてるやりかたがあるかもしれない。あったらいいな。 0. 環境 次のような環境を前提として

  • howtohp.com - howtohp リソースおよび情報

    Get a new domain registered at NameSilo.com. Find out who owns any domain name with the WHOIS tool. This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.

    howtohp.com - howtohp リソースおよび情報
  • MySQLバイナリログの仕様 – OpenGroove

    MySQLのバイナリログについて、うっすらまとめてみようかと。 RDBMSで更新ログまたはトランザクションログと呼ばれているログの機能は、 MySQLでは「バイナリログ」が担っている。 これらの内容は、「CREATE TABLE文やINSERT文といったデータベースの中身を 変更する操作を行った際の操作履歴を追跡できる形で記録した情報」であり、 コミットされたトランザクションの情報が保存される。 トランザクションログの中身はRDBMSによって異なり、「論理ロギング」と 「物理ロギング」がある。「論理ロギング」はSQL文レベルで変更履歴を管理し、 「物理ロギング」は変更があったデータブロックをバイナリイメージとして管理する。 MySQLのバイナリログは論理ロギングだが、OracleのREDOログやInnoDBログは 物理ロギングである。 バイナリログはデフォルトでは作成されないので、my.c

  • 13さいの備忘録 : SQLite3→MySQLへデータ移行

    2011年05月28日20:40 カテゴリrailsmysql SQLite3→MySQLへデータ移行 Rails3のデフォDBSQLite3なわけで、確かに早くて手軽で便利なんだけど、1点だけ問題がある。 それは、排他制御がファイルのロックであること! なんだよねぇ。 Railsだけで使っていれば問題ないんだけど、どうしても運用中にDBを弄ることが発生してしまう。 ってことでRails3既存環境をMySQLへ 変更してみる。 環境 ubuntu 11.04 Rails(3.0.7) SQLite3 MySQL5 参考 http://d.hatena.ne.jp/arcright/20100725/1279992599 参考サイト様によると、 yamlでエクスポインポすると簡単に移行できるらしい。 とありえず、MySQLをインストール $ sudo apt-get install mys

  • http://www.mysql.gr.jp/

  • /.Jに聞け:PostgreSQLとMySQL、それぞれの優位性は? | スラド IT

    フリーのデータベースとしてどちらも名高いPostgreSQLMySQL。それぞれにはどのような優位性があるのか?という 質問がQA@ITにて投げかけられている。確かに複数のDBに対応するORマッパーが普及する現在、どちらを選択するかで迷うことも多いだろう。回答でほぼ完璧な答えが記載されているような気もするが、/.J読者の皆様はどう思う? ちなみにタレコミ子はみんな使っているからという理由でMySQL派です。

  • MySQLでalter tableしてauto_incrementなcolumnをaddしたい - くろまほうさいきょうでんせつ

    と思ったけどすんなり行かなかったのでメモ。 +-------+--------------+------+-----+ | Field | Type | Null | Key | +-------+--------------+------+-----+ | id | char(32) | NO | PRI | | title | varchar(300) | NO | | +-------+--------------+------+-----+↑のようなテーブルhogeにauto_encrementなfugaカラムを追加しようとしたが・・・ mysql> alter table hoge add column fuga int NOT NULL AUTO_INCREMENT after id; ERROR 1075 (42000): Incorrect table definition

    MySQLでalter tableしてauto_incrementなcolumnをaddしたい - くろまほうさいきょうでんせつ
  • 漢(オトコ)のコンピュータ道: InnoDBでCOUNT()を扱う際の注意事項あれこれ。

    InnoDBを使うとき、MyISAMと比較して度々やり玉に挙げられるポイントとして「COUNT()が遅い」というものがある。確かにInnoDBにおいて行数を弾き出すのにはテーブルスキャンが必要なのだが、そもそもMyISAMのCOUNT()が速い(テーブルの行数を保持してる)のが特殊なのであって、InnoDBが遅いわけではないのである。とはいえ、高速なCOUNT()については需要が多く、この問題には多くの人取り組んでおられるようだ。しかしながら、COUNT()のチューニングについては未だ語られていない点があるように見受けられるので、今日はCOUNT()のチューニングについて解説しようと思う。 COUNT(*)、COUNT(col)、COUNT(1)の違い基的なことではあるが、COUNT(*)とCOUNT(col)では意味が異なるため、異なる結果が返される場合がある。COUNT(*)はフェッ

    漢(オトコ)のコンピュータ道: InnoDBでCOUNT()を扱う際の注意事項あれこれ。
  • 漢(オトコ)のコンピュータ道

    ※この記事はMySQL Advent Calendar 2023の4日目です。 MySQL 8.0シリーズでは正式版になってから多数の新機能が追加されるというリリースモデルであった。正式版になってから追加された新機能の中に、GIPK(Generated Invisible Primary Key)というものがある。これはなんとMySQL 8.0.30で追加された機能だ。MySQL 8.0が正式版になってから、なんと4年と3ヶ月後のことである。そんな感じでMySQL 8.0の新機能は正式リリース後にも増え続け、途方もない規模になっている。このブログでは一度に紹介するのは諦め、少しずつ気の向いたものから紹介していこうと思う。今回はその第一弾として、GIPKについて解説しよう。

    漢(オトコ)のコンピュータ道
  • MySQLがおかしい!あなたならどうしますか? – MySQL Casual Advent Calendar 2011 - As a Futurist...

    しわっす!DBA 兼オペレーションエンジニア兼タスクマネージャやってる riywo です。何のネタを書こうかなぁと考えたのですが、正直ネタを仕込む時間もなかったので僕がいつもやってることをさらっと紹介するということで勘弁して下さい>< MySQL がおかしい! 03:14 hidek: なんかエラー出まくってるんだけど! 03:14 zigorou: MySQL と通信してるとこっぽい 03:15 riywo: 見ます こんなやりとりは皆さん日常茶飯事ですよね?ね?ね?こんな時に、DB に責任を持つものとして真っ先に対応するのが僕らの仕事です。でも、じゃあ具体的にこのあと何をしましょう?既にサービスはエラーだらけで一刻を争う状態です。 (対応開始) まずはエラーメッセージ 今回の様な場合はアプリのエラーログにどばっと MySQL に関するエラーが出ているでしょう。まずはそれを見ることが始ま

    MySQLがおかしい!あなたならどうしますか? – MySQL Casual Advent Calendar 2011 - As a Futurist...
  • MySQL :: MySQL 8.0 リファレンスマニュアル :: 12.8.1 文字列比較関数および演算子

    文字列関数に引数としてバイナリ文字列が指定されている場合は、結果の文字列もバイナリ文字列になります。 文字列に変換された数字は、バイナリ文字列として処理されます。 比較のみがこの影響を受けます。 通常、文字列比較のいずれかの式で大/小文字が区別される場合、比較は大/小文字を区別して実行されます。 expr LIKE pat [ESCAPE 'escape_char'] SQL パターンを使用したパターン一致。 1 (TRUE) または 0 (FALSE) を返します。 expr または pat のいずれかが NULL である場合は、結果も NULL になります。 パターンはリテラル文字列である必要はありません。 たとえば、文字列式やテーブルカラムとして指定できます。 後者の場合、カラムは MySQL 文字列型のいずれかとして定義する必要があります (セクション11.3「文字列データ型」 を

  • oinume journal

    大規模なコードベースでリファクタリングを省エネ化するためにcodemodを最近調べていて、軽く試行錯誤したのでそのメモ。 やりたいこと 例えば以下のようなTable Driven TestなコードをBEFOREからAFTERに書き換えたい。コード量が多いため人間がやるのは現実的ではなく、codemodで機械的に書き換えたい。 BEFORE package main import ( "slices" "testing" ) func TestContains(t *testing.T) { type args struct { ss []string s string } tests := []struct { name string args args want bool }{ { name: "empty: false", args: args{[]string{}, ""}, wan

    oinume journal
  • 人力検索はてな - (PHP MYSQL)画像をデータベースに保存したいのですがいまいち方法が分かりません。 画像をブラウザ上から保存できる簡単なスクリプト

    (PHP MYSQL)画像をデータベースに保存したいのですがいまいち方法が分かりません。 画像をブラウザ上から保存できる簡単なスクリプトを書いてください。お願いします。 保存するDBSQLファイルもお願いします。

  • プロセスを強制終了する - MySQL 逆引きリファレンス

    KILL プロセスのID 以下の例では、「SHOW PROCESSLIST」で実行中のプロセスを確認した後、Id 9 のプロセスを強制終了しています。 mysql> SHOW PROCESSLIST; +----+------+----------------+--------+---------+------+-------+------------------+ | Id | User | Host | db | Command | Time | State | Info | +----+------+----------------+--------+---------+------+-------+------------------+ | 9 | root | localhost:4049 | testdb | Sleep | 39 | | NULL | | 13 | root

  • さくらのレンタルサーバ

    レンタルサーバなら「さくらのレンタルサーバ」! 月額換算でわずか129円、缶ジュース1分のお値段で使える格安プランから、ビジネスにも使える多機能&大容量プランまで、 用途と予算に合わせてプランを選べます。 さらにマルチドメイン対応でメールアドレスも無制限。無料ウイルススキャンや無料電話サポートもあるので安心して ご利用いただける共用レンタルサーバサービスです。

  • なぜMySQLのサブクエリは遅いのか。

    よくMySQLはサブクエリが弱いと言われるが、これは当だろうか?半分は当で半分は嘘である。MySQLのサブクエリだってなんでもかんでも遅いわけではない。落とし穴をしっかり避け、使いどころを間違えなければサブクエリも高速に実行できるのである。今日はMySQLがどんな風にサブクエリを実行し、どのような場合に遅いのかということについて説明しよう。 EXPLAINで実行計画を調べた際に、select_typeにはクエリの種類が表示されるのだが、代表的なサブクエリには次の3つのパターンがある。 SUBQUERY DEPENDENT SUBQUERY DERIVED 結論から言おう。遅いのは2番目、DEPENDENT SUBQUERYである。DEPENDENT SUBQUERYとはいわゆる相関サブクエリに相当するもので、サブクエリにおいて外部クエリのカラムを参照しているサブクエリのことである。そし

    なぜMySQLのサブクエリは遅いのか。
  • MySQL AB :: MySQL 4.1 リファレンスマニュアル

    概要 これは MySQL リファレンスマニュアルです。 MySQL 8.0 から 8.0.25、および NDB のバージョン 8.0 から 8.0.25-ndb-8.0.25 に基づく NDB Cluster リリースについてそれぞれ説明します。 まだリリースされていない MySQL バージョンの機能のドキュメントが含まれている場合があります。 リリースされたバージョンの詳細は、「MySQL 8.0 リリースノート」を参照してください。 MySQL 8.0 の機能. このマニュアルでは、MySQL 8.0 のエディションによっては含まれていない機能について説明します。このような機能は、ご自身にライセンス付与されている MySQL 8.0 のエディションに含まれていない場合があります。 MySQL 8.0 の使用しているエディションに含まれる機能に関する質問がある場合は、MySQL 8.0

  • MyISAMからInnoDBへ切り替えるときの注意点

    MySQLを使い始めて間もない人がよく陥る罠の中に、気づくと使ってるストレージエンジンがMyISAMだった!ということがある。デフォルトのストレージエンジンはMyISAMなので、MySQLに詳しくない人たちが比較的陥りやすい罠なのだ。そもそもストレージエンジンという概念自体がMySQL独自のものなので仕方のない話である。MyISAMは素晴らしいストレージエンジン(たとえばこのYahoo!の中の人による投稿で言われているように)であるが、長所もあれば短所もある。例えば、 トランザクション対応ではない。 クラッシュセーフではない。 更新と参照が入り乱れた場合の同時実行性能がよくない。 テーブルが大きく(数億行とか)なるとINSERTの性能が劣化する。 などなど。特に前者の2つが問題で、アトミックな操作が必要なところでロジックを実装出来なかったり、サーバがクラッシュした時にデータがお亡くなりにな

    MyISAMからInnoDBへ切り替えるときの注意点