タグ

MySQLに関するnagolingのブックマーク (12)

  • Google SpreadSheetとMySQLを連携する | from umentu import stupid

  • TCP Proxyを書いてMySQLの通信を覗いてみる - Copy/Cut/Paste/Hatena

    お、MySQLの通信も見えそうだぞ? pic.twitter.com/GVxBXqHEgA— k1LoW (@k1LoW) 2018年7月25日 "TCP Proxyを書いてPostgreSQLの通信を覗いてみる - Copy/Cut/Paste/Hatena" の続編です。 MySQLの通信を覗いてみる また簡単なクエリだけを対象にします(プリペアードステートメントなどは含みません)。 MySQLもしっかりとしたドキュメントがありクエリのプロトコルの説明もありました。 MySQL :: MySQL Internals Manual :: 14.6.4 COM_QUERY しかし、とみたまさひろさん の資料のほうが断然わかりやすかったです。 slide.rabbit-shocker.org というわけで今回も tcprxy に実装を追加していきます。 mysqlコマンドでクエリを実行してみ

    TCP Proxyを書いてMySQLの通信を覗いてみる - Copy/Cut/Paste/Hatena
  • MySQLのGROUP_CONCATがアツい - Qiita

    http://qiita.com/advent-calendar/2015/gaiax 初めまして、GaiaxAdventCalender 4日目担当の技術開発部の金田と申します。 既に熱い記事ばかりなので後続の人たちのハードルを下げる為に小ネタで行きたいと思います。 GROUP_CONCATという関数がMySQLにあるんですがそれがアツいのでみんなに教えたいという記事です。 1対多の関係のとき 普通にテーブル設計してると1対多の関係(has many)になるリレーションシップをテーブル間で張ることが多いですよね。 まぁこんな感じで。 ざっくりと記事に対して複数のタグが設定できるような作りを想定してみます。 Entryから出た線がTagは複数に枝分かれしているのがhas manyの関係です。 で、こんなデータが入ってます。 取得するとき 記事と、それに付随したタグの一覧を取得したいときは当

    MySQLのGROUP_CONCATがアツい - Qiita
  • mysql group_concatとfind_in_setのまとめ - 技術ブログ

    group_concatはgroup byで複数行をまとめた際に、まとめられた列のデータをカンマ区切りで表示する機能。 find_in_setはカンマ区切りのデータを絞り込む機能。 この2つを組み合わせることで、来なら副問合せ等の複数のSQLに分けないと出来ないようなことが一つのSQLで完結できることが分かった。 ただ速度的なメリットがあるのかどうかは不明。 参考ページの例を使うと以下のようなsqlでmarketとsalesに所属するempを一発で取得できる。 select dept_emp.empid, emp.name, GROUP_CONCAT(dept.name order by dept.id) as dept_n from dept_emp left join emp on dept_emp.empid=emp.id left join dept on dept_emp.de

    mysql group_concatとfind_in_setのまとめ - 技術ブログ
  • phpMyAdminやAdminerの文字化けが治らない場合の対処方法

    とある複数システムが同居するサーバの VPS 移行を過去二回実施してきました。MySQLのデフォルトのデータベースの設定は、既存他システムのプログラム改変が伴うためできません。ちなみに MySQL の文字コードに関するシステム設定は下記の通り。latin1, binary, utf8 が混在する混沌とした設定です。 mysql> SHOW VARIABLES LIKE 'character%'; +--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | latin1 | | character_set_connecti

  • MySQLのEXPLAINを徹底解説!!

    以前、MySQLを高速化する10の方法という投稿で「EXPLAINの見方についてはいずれ解説しようと思う」と書いてしまったので、今日はその公約?を果たそうと思う。 MySQLのチューニングで最も大切なのは、クエリとスキーマの最適化である。スキーマの設計は一度決めてしまうとそのテーブルを利用する全てのクエリに影響してしまうためなかなか変更することは出来ないが、クエリはそのクエリだけを書き直せば良いので変更の敷居は低い。そして遅いクエリをなくすことは、性能を大幅に向上させるための最も有効な手段である。従って、アプリケーションの性能を向上させたいなら、まず最初にクエリのチューニングを検討するべきなのである。 最適化するべきクエリはスロークエリログやクエリアナライザで見付けられるが、ではそのようなクエリが見つかった場合にはどのように最適化すればいいのか?そのためにはまず現在どのようにクエリが実行さ

    MySQLのEXPLAINを徹底解説!!
  • 5分で出来るMySQLのお手軽チューニング - わーくあうと!

    こちらのエントリーで書いているのですが、開発用のVPS鯖がメモリ使い過ぎで重くなっていて、mysqlに問題がありそうだったのでサクっと調整しました。 その手順を残しておきます。 MySQLのチューニング項目について説明 MySQLのメモリに関する設定項目はたくさんあります。 それぞれの項目に関しての詳しい情報は下記が参考になります。 http://trackback.blogsys.jp/livedoor/klab_gijutsu2/50860867 ただ、これらを全て把握するのは大変だと思うので、簡単に分類すると以下の2種類があります。 グローバルバッファ スレッドバッファ で、MySQLが使うメモリ量は下記になるわけです。 グローバルバッファ + ( スレッドバッファ * コネクション数 ) それらを踏まえた上で具体的なチューニングに入ります。 MySQLで使っているメモリ量を調べる

    5分で出来るMySQLのお手軽チューニング - わーくあうと!
  • limonade + idiorm でさわやかコーディングのメモ | もしもワークス

    こないだ仕事で使った組み合わせ。 Limonade(Lemonadeではない)はSinatraに影響を受けたらしいPHP用の軽量フレームワーク。IdiormはPDOベース。どちらもシンプルでプロトタイプ作りに適している。覚えることが少ないから学習も簡単。IdiormをベースにしたORマッパー、Parisはまだ使ってないので後で確かめたい。 Limonade – PHP micro-framework Idiorm and Paris – object relational mapper (ORM), fluent SQL query builder and Active Record implementation for PHP 以下はlimonadeでidiormを使うときのメモ。 接続設定やエラーモードの指定などを、index.phpのconfigure()に記述。 require

  • builwing.info

    This domain name registration has expired and renewal or deletion are pending. If you are the registrant and want to renew the domain name, please contact your registration service provider.

  • SQLiteからMySQLへデータのマイグレーション(変換)|DB|ブログ|ノノログ

    WEBでいろいろググって手動で変換してたけど、うまく行かなかった。 英語で検索したらすぐに変換スクリプトが出てきたのでそれを試したらだいたいうまくいったよ!って話。 SQLiteのダンプファイルをとって、テキストエディタで手動で変換してたんだけど、うまくいかない。 TRANSACTIONやら、AUTOINCREMENTやら、データ型やらを変換してたけどまぁインポートはうまくいかない。 うまくいかないのは正規表現などの記事の文字列あたりがおかしいと怒られる。その辺りのデータを一旦削除するとインポート自体はまあ通った。しかしインポートされたデータを見ると、booleanあたりがおかしい。 この辺りで2時間程度時間を費やし心が折れてきた・・もうめんどくさいお(`;ω;´) 日語で検索してんのが悪いんじゃないかと思い、「SQLite to MySQL」でググると一発でpyhonスクリプトが出てき

  • softelメモ

    php】 TOTPのワンタイムパスワードを生成する 問題 TOTPのワンタイムパスワードをphpで生成したいです。 答え 例 // ライブラリを利用するか、関数を自作してbase32_decodeしてください $binary_secret = Base32::decode […] 【php】base32_decode() 問題 phpで、base32_decode() したいです。 答え 例 function base32_decode($s) { $m = array( "A" => 0, "B" => 1, "C" => 2, "D" […] 【windows】スタートメニューやタスクバーのフォルダ 問題 スタートメニューやタスクバーのショートカットなどは、どこかのディレクトリに入ってますか? 答え スタートメニュー(全体) C:\ProgramData\Microsoft\Wind

    softelメモ
  • PHPとセキュリティの解説書12種類を読んでSQLエスケープの解説状況を調べてみた

    この投稿はPHP Advent Calendar 2013の13日目の記事です。昨日は@tanakahisateruのPHPが糞言語なのはどう考えても参照をポインタだと思っているお前らが悪いでした。 現在twitterのタイムラインで、史上空前のSQLのエスケープブームが起こっています。 オレオレSQLセキュリティ教育は論理的に破綻している | yohgaki's blog 「プリペアードクエリが基だけど、動的に SQL を組み立てる場合もあるから、そういう場合に備えてエスケープも知っておいたほうがいいかも」 - Togetterまとめ エスケープとプレースホルダをめぐる議論 - Togetterまとめ SQLインジェクション対策としてのプリペアドステートメントとエスケープについての議論 - Togetterまとめ IPAの「安全なSQLの呼び出し方」が安全になっていた | yohgak

    PHPとセキュリティの解説書12種類を読んでSQLエスケープの解説状況を調べてみた
    nagoling
    nagoling 2014/11/12
    “ 同書のSQL呼び出しの説明は基本的にPDOを用いていますが、SQLインジェクションの説明の節では、プレースホルダが使えない場合はpg_escape_stringやmysql_real_escape_stringなど「データベースエンジン毎に用意された関数」でエス
  • 1