記事の引越しから漏れていたのでサルベージ。 Ruby on Railsを使ってある程度大きめのアプリケーションを作るようになると、ごく稀に「Lost connection to MySQL server during query」というエラーが発生するようになる事があります。 この問題については、yuguiさんの記事 「Lost connection to MySQL server during query」 に詳しいです。 結局のところ、はっきりとした解決策も見つからず、ごく稀なので放置気味になっていたのですが、先日解決策を見つけたので改めて紹介します。 解決策: mysql_retry_lost_connectionというrubygemを使うことで、コネクションのLostが発生した場合に、自動的に再接続を試みるようにActiveRecordの挙動を修正することが出来ます。 詳細はこのG
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。 Aurora MySQL データベースエンジンの更新 2019-11-25 (バージョン 2.07.0) (廃止) バージョン: 2.07.0 Aurora MySQL 2.07.0 は一般公開されています。Aurora MySQL 2.x バージョンは My SQL5.7 と互換性があり、Aurora MySQL 1.x バージョンは MySQL 5.6 と互換性があります。 現在サポートされている Aurora MySQL リリースは、1.19.5、1.19.6、1.22.*、1.23.*、2.04.*、2.07.*、2.08.*、2.09.*、2.10.*、3.01.*、3.02.* です。 現在サポートされている Aurora MySQL リリースから Au
こういう感じのSQLを書いた UPDATE parent SET name = 'hogehoge' WHERE parent_id IN ( SELECT parent.parent_id FROM parent LEFT JOIN children as c ON parent.parent_id = c.parent_id ); そしたらこんなエラーが出てきた You can't specify target table 'parent' for update in FROM clause ?? ぐぐったら公式サイトがでてきた MySQL :: MySQL 5.6 リファレンスマニュアル :: 13.2.10.9 サブクエリーのエラー このエラーは、テーブルを変更し、さらにサブクエリーで同じテーブルから選択しようとする次のような場合に発生します。 へえ。 解決方法 IN句のなかのSE
以下では、複数の Amazon RDS for MySQL DB インスタンス間において、バイナリログ (binlog) レプリケーションでグローバルトランザクション ID (GTID) を使用する方法について説明します。 binlog レプリケーションを使用する際に MySQL での GTID ベースのレプリケーションに慣れていない場合は、MySQL ドキュメントの「Replication with global transaction identifiers」を参照してください。 GTID ベースのレプリケーションは、すべての RDS for MySQL 5.7 バージョンおよび RDS for MySQL 8.0.26 以降の MySQL 8.0 バージョンでサポートされています。レプリケーション設定のすべての MySQL DB インスタンスがこの要件を満たしている必要があります。
はじめに この記事は ドワンゴ Advent Calendar 2017 - Qiita の15日目の記事です。 昨日の記事は ytanaka さんの Goadを使った負荷試験とパフォーマンス分析手法について - Qiita でした。 自己紹介 ドワンゴでニコニコ動画の開発をしています。 *1 去年もアドベントカレンダー書いてました→ LGTM画像を驚くほど簡単に作れるWebサービスをScalaで作る - Qiita DBすき yoshikyoto (Yoshiyuki Sakamoto) · GitHub うたかた/ヨシキ (@yoshiki_utakata) | Twitter 背景 昔々あるところに、以下のような構成のサーバーがありました Webサーバー(アプリケーションサーバー)とDBサーバーからなる。 DBに入っているデータはユーザーIDでシャーディングされている。*2 どのデー
v1.5.4: Bugs fixed in native and godrv packages. v1.5.3: Bugs fixed in new godrv code. v1.5.1: Conn.NetConn method added. v1.5: Needs Go 1.1 (time.ParseInLocation and net.Dialer) to compile. v1.4: Stmt.ResetParams, Stmt.Map and Stmt.NumFields methods disappeared. New Stmt.Fields method. godrv implements driver.Queryer interface which improves performance when compiled with Go tip. v1.3: Overall pe
はじめに たとえばこんなDDLを投げる。 CREATE TABLE test ( id int(10) unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY, hoge varchar(256) NOT NULL, UNIQUE KEY (hoge) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; するとエラーになる。 Specified key was too long; max key length is 767 bytes (SQLState:S1000)エラーに書かれているとおり、keyは最大で767byteまでしか使えないらしい。 ちなみにkeyはPRIMARY KEYとUNIQUE KEYがダメ、ただのKEYならOK。 で、どうするか。 1.素直に諦める 上記例ではテーブルがCHARSET=utf8のため1文字3b
-- Create syntax for TABLE 'categories' CREATE TABLE `categories` ( `id` int(11) unsigned NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- Create syntax for TABLE 'items' CREATE TABLE `items` ( `id` int(11) unsigned NOT NULL, `category_id` int(11) unsigned NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
New to SQLAlchemy? Start here: For Python Beginners: Installation Guide - basic guidance on installing with pip and similar For Python Veterans: SQLAlchemy Overview - brief architectural overview New users of SQLAlchemy, as well as veterans of older SQLAlchemy release series, should start with the SQLAlchemy Unified Tutorial, which covers everything an Alchemist needs to know when using the ORM or
SREチームの長田です。 この記事はTech Kayac Advent Calendar Migration Track 1日目の記事です。 今回はLobiで使用していたMongoDBをMySQLに移行したはなしです。 MongoDBを何に使っていたか DAUなどのKPIレポートや、サービスの状況を把握するための各種集計結果を保存するために使っていました。 サービス開始直後はこれらの数字を色々と試行錯誤しながら追加したり、減らしたりしていました。 頻繁な追加削除があるデータ構造を保存するために、スキーマレスなデータベースであるMongoDBはちょうどよかったようです。 (当時スキーマレスデータベースが流行っていたというのもあるでしょう) なぜ移行したのか MongoDBに保存されたドキュメントは、スキーマ管理がされていませんでした。 スキーマレスであることをいいことに、その時時によって様々
Deprecatedにした経緯というか背景が伝わってるのかどうかアレだと思ったので、ここに日本語にて書き記しておく。 Deprecate mismatched collation comparison for uniquness validator by kamipo · Pull Request #35350 · rails/rails · GitHub Active Recordのuniqueness validatorはデフォルトでcase sensitiveな比較をするんですが、これが、文字列のデフォルトのcollationがcase insensitiveなMySQLと相性が悪く、DB上のUNIQUE制約と一致しない振る舞いだったりINDEXが効率よく使えずDBが死ぬみたいな問題を引き起こしていました。 例: 本当にあったRailsの怖い話 僕も主に仕事のコードレビューで過去に何
doublewrite とは? InnoDB が備わっている「データ二重書き込み」によるデータ保護機能。最初から有効になっている。1 この機能はトランザクションログとは別なので混同しないように。 MySQL Server での説明 https://dev.mysql.com/doc/refman/5.7/en/innodb-doublewrite-buffer.html MariaDB Server での説明 https://mariadb.com/kb/en/library/xtradbinnodb-doublewrite-buffer/ Percona Server での説明 https://www.percona.com/doc/percona-server/5.5/performance/innodb_doublewrite_path.html SSD/HDD 混在環境のために d
MySQL Workbench is a unified visual tool for database architects, developers, and DBAs. MySQL Workbench provides data modeling, SQL development, and comprehensive administration tools for server configuration, user administration, backup, and much more. MySQL Workbench is available on Windows, Linux and Mac OS X. Design MySQL Workbench enables a DBA, developer, or data architect to visually design
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く