タグ

mysqlに関するHayatoのブックマーク (71)

  • oak-chunk-update: openark kit documentation

    NAME oak-chunk-update: Perform long, non-blocking UPDATE/DELETE operation in auto managed small chunks SYNOPSIS Delete rows from world.City where population is small: oak-chunk-update --database=world --execute="DELETE FROM City WHERE Population < 10000000 AND OAK_CHUNK(City)" Same as above, provide fully qualified table names, use 100 rows chunk size: oak-chunk-update --execute="DELETE FROM world

    Hayato
    Hayato 2015/12/13
    大量レコードをonlineのまま削除したい、そんなあなたに、ってことであってるよね?
  • MySQLでサービス停止のないALTER TABLEの検討 - SH2の日記

    MySQLでテーブルへのカラム追加、インデックス追加やテーブルの再編成などを行うと、その間テーブルに共有ロックがかかってしまいます。そのためこれらのメンテナンス処理は、通常利用者の少ない深夜早朝帯にサービスを止めて実施する必要があります。日はそれを無停止、オンラインのままでできないかという話題です。 基的なアイデア メンテナンス対象の元テーブルをコピーして、作業用の仮テーブルを作ります 仮テーブルに対して、カラム追加などの変更を加えます その間、元テーブルに対して行われる更新処理について差分を記録しておきます 仮テーブルの変更が終わったら、記録しておいた差分データを仮テーブルに反映します 差分データの反映が終わったら、元テーブルと仮テーブルを入れ替えます これと似たようなことを考えた方は結構いらっしゃるのではないでしょうか。ただ、言うは易し、行うは難しです。整合性がきちんと取れるかどう

    MySQLでサービス停止のないALTER TABLEの検討 - SH2の日記
    Hayato
    Hayato 2015/12/13
    ハァーなるほど
  • RDS for MySQLのスロークエリーログをAWS LambdaでElasticsearchに取り込む | DevelopersIO

    はじめに 藤です。 Elasticseachに取り込むネタが続いています。 前回のELBのアクセスログをAWS LambdaでElasticsearchに取り込むに続いて、今回はRDS for MySQLのスロークエリログをElasticsearchに取り込む実装をご紹介します。 概要 MySQL Serverはスロークエリーログにより指定した秒数を超えるクエリを記録することができます。スロークエリログはパフォーマンス劣化の解析、クエリの適切性、DBのマシンパワーの適切性のチェックに役立ちます。RDS for MySQLも例外ではありません。パラメータグループを設定することにより、スロークエリログを有効にすることができます。それに加えてRDS for MySQLの場合、AWSAPIによりデータベースに接続せずともスロークエリログを取得することができます。 スロークエリログフォーマット

    RDS for MySQLのスロークエリーログをAWS LambdaでElasticsearchに取り込む | DevelopersIO
  • RDS (MySQL) で大規模テーブルを運用する際の注意点 | Hack

    この投稿は AWS Advent Calendar 2014 の 22日目の記事です。 RDS で MySQL を運用中に、想定外の CPU スパイクに悩まされたことがありましたので纏めておきます。 まずは、CloudWatch のグラフを見てみましょう。 所々で CPU スパイクが発生しているのがわかるかと思います。一見すると法則性がないようにも見えます。一般的には CPU リソースを消費する要因としては、アクセス過多やバッチ処理などで負荷をかけたケースが殆どです。しかし、今回のケースはユーザー側では何も負荷をかけておらず、RDS へのアクセスがゼロのサーバーでも同様の CPU スパイクが発生することがわかりました。 CPU スパイクの原因は? では、CPU スパイクの原因は何だったのでしょう?その後の調査で「RDS の定期メンテナンスジョブ」が原因であることがわかりました。 以下、メン

    RDS (MySQL) で大規模テーブルを運用する際の注意点 | Hack
    Hayato
    Hayato 2014/12/29
    腹を括るための1情報として。
  • MySQL :: MySQL yum repositories

    I think most people will agree that downloading RPMs from a website is kind of old fashioned when there are yum repos. After a number of user requests, we have now launched the official yum repos for MySQL. Can’t wait? Neither can I. On a fresh install: Download a setup package for your distribution from http://dev.mysql.com/downloads/repo yum localinstall mysql-community-release-distro-release.no

    Hayato
    Hayato 2014/11/15
  • AWS News Blog

    Amazon SageMaker Geospatial Capabilities Now Generally Available with Security Updates and More Use Case Samples At AWS re:Invent 2022, we previewed Amazon SageMaker geospatial capabilities, allowing data scientists and machine learning (ML) engineers to build, train, and deploy ML models using geospatial data. Geospatial ML with Amazon SageMaker supports access to readily available geospatial dat

    Hayato
    Hayato 2014/11/13
    むう
  • MySQLユーザーがPostgreSQLを触ってみたメモ - tmtms のメモ

    最近なぜか MySQL を使う Ruby アプリを PostgreSQL に対応する羽目になっているのですが、今までほとんど MySQL 以外の RDBMS を触ってなかったので、色々ハマったりしたのでメモっときます。 なお PostgreSQL 歴が浅いので間違ってること書いてるかもしれません。 API プログラムから MySQL にアクセスするには Ruby/MySQL を使っていたのですが、PostgreSQL 用の API を新たに覚えるのは面倒だったので、Sequel を使って書き直しました。 mysql.query("select col1, col2 from table where col3='xxx'") ↓ db[:table].where(col3: 'xxx').select(:col1, :col2) …みたいな感じです。 今までプログラム中に突然 SQL が現れ

    MySQLユーザーがPostgreSQLを触ってみたメモ - tmtms のメモ
  • 寛容なMySQLを非寛容にすること(その3) by Inquisitor

    結論:MySQLsql_modeには、ONLY_FULL_GROUP_BYを入れておく ユーザを管理するテーブルを考える。ユーザはa, bという2つの属性を持つ。テーブルはこんな感じ。 CREATE TABLE users ( id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, a INT, b INT, INDEX (a), INDEX (b) ); INSERT users (a,b) VALUES (1,1); INSERT users (a,b) VALUES (1,2); INSERT users (a,b) VALUES (1,3); SELECT * FROM users; +----+------+------+ | id | a | b | +----+------+------+ | 1 | 1 | 1 | | 2 | 1 | 2

    寛容なMySQLを非寛容にすること(その3) by Inquisitor
    Hayato
    Hayato 2014/10/29
    SET sql_mode='ONLY_FULL_GROUP_BY';
  • MySQL::Diff - MySQLのデータベースの差分を調べる - Perl入門ゼミ

    Perl › モジュール › here MySQLのデータベースの差分から、差分をなくすようなコマンドを自動生成するツールを探していたら、MySQL::Diffというモジュールを発見した。このモジュールにはmysqldiffというコマンドラインツールがついているので、通常はこちらを使うのが良いみたい。 開発環境と番環境の差分を埋めるのにとても役立つ。すべての差分を表示してくれるわけではなく、テーブル定義に関する部分だけのようなので、トリガやインデックスについては、自分で設定する必要があるようです。 ドキュメントにはオプションの説明がないようなので、--helpコマンドで確認できる。 mysqldiff --help まずデータベースのテーブル定義をmysqldumpで取得しましょう。今は開発環境にいて開発環境のデータベースサーバーに変更を加えていると仮定します。 mysqldump -d

    MySQL::Diff - MySQLのデータベースの差分を調べる - Perl入門ゼミ
    Hayato
    Hayato 2014/06/29
    おう。。こんなんあるのか。
  • 気軽なMySQLバージョンアップ - まめ畑

    このエントリーはMySQL Casual Advent Calendar 2013 10日目の記事です。カジュアル! このへんでそろっとカジュアル詐欺と言われるのを防止するために、カジュアルな話を書いてみました。 MySQL5.6も正式リリースされてもうすぐ1年経ち、5.7の足音も聞こえてきている今日このごろですが皆様のMySQLのご機嫌はいかがでしょうか。 新機能や性能向上/bugfixに対応するためにMySQLのバージョンアップを行う機会や性能や不具合調査を行うことも多いかと思います。データベースのバージョンアップは特にメジャーバージョンアップの場合、パラメータのデフォルト値などの変更や仕様変更の影響(オプティマイザの変更)をアプリケーションが受けないか、性能の変化などを検証すると思います。 検証 実際に検証を行う場合、番環境で流れているクエリをバージョンアップ先のDBに実際に流して

    気軽なMySQLバージョンアップ - まめ畑
  • MySQL 5.6 パラメータ検討会 - SH2の日記

    7月29日にMyNA(日MySQLユーザ会)会 2013年7月が行われ、Oracle ACE Directorの@sheeriさん、MyNA会長の@tmtmsさんに混ざって発表をしてきました。運営のみなさま、当日お越しいただいたみなさま、いつもありがとうございます。 Performance Schema - Sheeri Cabral (PDF) MyNA会2013年7月 に行って来ました - MySQLのプロトコル解説 - @tmtms のメモ 今回は@yoku0825さん、@yyamasaki1さんがライトニングトークをされました。@yoku0825さんアイスごちそうさまでした。 日々の覚書: MyNA会2013年7月に行ってきました 5分で作るMySQL Cluster環境 私は発表内容について懇親会でいろいろ宿題をもらってしまい、しばらく復習をしていました。ようやく修正が終わりま

    MySQL 5.6 パラメータ検討会 - SH2の日記
    Hayato
    Hayato 2013/12/08
  • Amazon RDSの多段リードレプリカを試してみた | Developers.IO

    ども、大瀧です。日リリースされたRDS(MySQL)の多段リードレプリカを早速試してみました。 多段リードレプリカとは 従来からRDS(MySQL)では、MySQLのレプリケーションを利用したリードレプリカを作成することができます。今回のリリースで、リードレプリカを参照する多段リードレプリカが作成できるようになりました。 これにより、以下の効果が見込めます。 リードレプリカを上限の5台よりも増やすことができる マスターの読み込みコストを押さえつつ、リードレプリカの台数を増やすことができる 要件 多段リードレプリカを作成するためには、以下の要件を満たすリードレプリカDBインスタンスをあらかじめ作成する必要があります。 参照元DBインスタンスがMySQL 5.6であること 自動バックアップが有効になっていること 要件から、MySQL 5.6で実装されたGTIDレプリケーションが裏で動いていそ

    Amazon RDSの多段リードレプリカを試してみた | Developers.IO
  • GlassFish データベースの設定

    2010年2月8日 at 12:21 午後 1件のコメント GlassFishはデータベースとの接続にデータベースベンダーが提供するJDBCドライバを使用します. GlassFishにはインストール時デフォルトで Java DBが付属しており,あらかじめJava DBに対するJDBCリソースと接続プールの設定がされています.そして GlassFish の監視系の機能の一つである,「呼び出しフロー」のデータ保存先として使用されています. ここでは,新たにMySQL 5.1との接続設定方法について紹介します.MySQLと接続するためには,MySQLのJDBCドライバを事前に入手しておいてください. また以降の手順ではMySQLが既にインストールされていることを前提に説明します. JDBCドライバに対するクラスパスを設定 dashost > asadmin get “cluster1-confi

    GlassFish データベースの設定
  • MySQL-5.5/5.6でのレプリケーション利用者に伝えたい「RESET SLAVE」にまつわる怖い話 - Y-Ken Studio

    MySQL-5.5よりRESET SLAVE;の挙動が変わり、直後にCHANGE MASTER構文を 発行しないと場合によっては問題が発生するとMySQLのドキュメントに記載されていました。 さらに、RESET SLAVE ALL;というクエリもサポートされたようです。 どういう事なのでしょう? 調べてみました。 ドキュメントにさらっと何か書いてある In MySQL 5.6 (unlike the case in MySQL 5.1 and earlier), RESET SLAVE does not change any replication connection parameters such as master host, master port, master user, or master password, which are retained in memory. Thi

    MySQL-5.5/5.6でのレプリケーション利用者に伝えたい「RESET SLAVE」にまつわる怖い話 - Y-Ken Studio
    Hayato
    Hayato 2013/05/22
  • MHAを検証して導入した話

    2. MHA とは  MHA とは MySQL のマスタ障害時に最新のス レーブをマスタとして他のスレーブの差分を 補完しマスタの向き先を変えてくれるプロダ クト。 replication の復旧を自動的にしてくれ るもの。  VIP を移動するのは自己責任。  MHA for MySQL は Master High Availability Manager and tools for MySQL の略らしいです。  作者の日語スライド http://www.slideshare.net/matsunobu/mha-for-mysqlden 3. 検証のきっかけ  じつは MHA はきっと使いたいと要望が出 るに違いないと思って、産休直前に松信 さんの英語の .ppt を英語講習の先生とマ ンツーの時間に一緒に訳してた。  そして育休から復帰するのを待ってたか のようにお客様

    MHAを検証して導入した話
    Hayato
    Hayato 2013/05/22
  • にわかSEの独り言 【サポート停止】RHEL5互換OS用 wingリポジトリ Ver.2を公開

    CentOSを中心としたLinuxの話題や、自作rpmのwingリポジトリの情報などを掲載しています。 ※ 2014年7月14日をもって、CentOS 5のサポートを停止しました。 wingリポジトリの対応OS RHEL 5の互換OSと呼ばれるものであれば、問題無く使用することが出来ると思います。(RHEL、CentOS、Scientific Linux等) ※ RHEL 6の互換OSはこちらです。 wingリポジトリを使用するにあたっての注意 今回のVer.2からは、Fedoraにて公開されているepelリポジトリをサポートしています。 標準リポジトリに加え、epelリポジトリを導入した上で、wingリポジトリをご使用下さい。 導入方法はこちらをご覧下さい。 その他のリポジトリ(rpmforge、remi等)には対応していません。似たようなパッケージがあるため、競合やバージョンの前後等が

    Hayato
    Hayato 2012/02/14
    mysql5.1以上をcentosに入れたいとき使うリポジトリ。ありがたい。
  • mysqldumpの--order-by-primaryオプションについて - SH2の日記

    TIPSです。このようなテーブルがありまして、 CREATE TABLE `link` ( `id1` int(11) NOT NULL DEFAULT '0', `id2` int(11) NOT NULL DEFAULT '0', PRIMARY KEY (`id1`,`id2`), KEY `ix1` (`id2`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;データは以下のような感じで、このときは2,900万レコードありました。 +---------+---------+ | id1 | id2 | +---------+---------+ | 5 | 69 | | 5 | 1022 | | 5 | 1487 | … | 1081 | 2021414 | | 1081 | 2087813 | | 1082 | 11 | | 1082 | 225

    mysqldumpの--order-by-primaryオプションについて - SH2の日記
    Hayato
    Hayato 2012/01/23
  • MacにMySQLをインストールする - アインシュタインの電話番号

    いつもどおりMacPortsを使ってインストールしたけどすごく時間かかった。最近評判の良いHomebrewだともっと速かったりするのかな? MySQLのインストール $ sudo port selfupdate $ sudo port install mysql5-server # インストール(すんごい時間かかる) $ sudo -u _mysql mysql_install_db5 # 初期化 $ sudo /opt/local/share/mysql5/mysql/mysql.server start # 起動確認 $ mysql5 -u root # 接続確認 $ /opt/local/lib/mysql5/bin/mysqladmin -u root password 'hogehoge' # 必要ならrootのパスワードを設定 $ sudo port load mysql5-s

    MacにMySQLをインストールする - アインシュタインの電話番号
  • Ring

    Ringとは、リクルートグループ会社従業員を対象にした新規事業提案制度です。 『ゼクシィ』『R25』『スタディサプリ』など数多くの事業を生み出してきた新規事業制度は、 1982年に「RING」としてスタートし、1990年「New RING」と改定、そして2018年「Ring」にリニューアルしました。 リクルートグループの従業員は誰でも自由に参加することができ、 テーマはリクルートの既存領域に限らず、ありとあらゆる領域が対象です。 リクルートにとって、Ringとは「新しい価値の創造」というグループ経営理念を体現する場であり、 従業員が自分の意思で新規事業を提案・実現できる機会です。 Ringフロー その後の事業開発手法 Ringを通過した案件は、事業化を検討する権利を得て、事業開発を行います。 さまざまな事業開発の手法がありますが、例えば既存領域での事業開発の場合は、 担当事業会社内で予算や

  • KateでスマートにSQLを編集しよう!

    このところ、KDEの進化が著しい。先月の終わり頃にKDE 4.6がリリースされたのだが、前回のバージョン4.5は去年の8月だったので、5ヶ月ちょっとでのバージョンアップとなる。KDEは4.5でかなり品質が向上したように思うのだが、4.6では心踊る新機能が目白押しだ。その中で、特に筆者の目を引いた新機能がひとつある。それは、KateSQL(Kate用SQLクライアントプラグイン)だ。 Kateとは?ひとことで言うとかなりイケてるエディタである。Qtを使って書かれており、KDEに標準的に含まれている。EmacsやVimのように、ゴリゴリにカスタマイズしまくって使うことを前提にした格的なエディタとは少し毛色は異なるが、種々のプログラム言語やマークアップ言語をサポート(シンタックスハイライトやオートインデントなど)していたり、Zen-Codingに似た入力モードを搭載するなど、かなり気の利いたエ

    KateでスマートにSQLを編集しよう!
    Hayato
    Hayato 2011/02/04