タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

pdoとmysqlに関するk-holyのブックマーク (7)

  • https://codeday.me/jp/qa/20190706/1182016.html

    k-holy
    k-holy 2019/07/26
    PDO::ATTR_PERSISTENTでMySQLがgone awayの件。MySQLのinteractive_timeout, wait_timeout設定により切断された場合に、PDOが再接続せず閉じた接続を返すために、スレッド数が増加するとのこと。PDOには状態を検出するスマートな方法はないと。
  • MySQL "Gone Away" Error with Persistent PHP Connection

    k-holy
    k-holy 2019/07/26
    PHP7だけど同じ現象が発生してる…。
  • 突然のUnbuffered Query…PDO+MySQLで入り込んだ迷宮 - Qiita

    CodeIgniterをバージョンアップしたところ、思わぬ形でPHPのバグを踏んでしまいました。 MySQLのバッファモード トラブルに見舞われるまで知らなかったのですが、PHPからMySQLを使う場合には、「バッファモード」と「非バッファモード」があります(リファレンス)。 バッファモード…SQLを発行すると、自動的にPHP側へ全データを取ってくる。デフォルト設定。 非バッファモード…SQLを発行した段階ではまだデータを取ってこない。 一見すると、非バッファモードのほうが便利そうに見えるのですが、1つ大きな問題があります。非バッファモードの場合、一度投げたクエリを始末し切るまで次のクエリが投げられないのです。もちろん、それを意識した上でPDOなりMySQLiなりを直接叩くのであればまだ使いでもあるのですが、(非バッファモードに対応しない)フレームワーク経由でDB接続するとなると、どこでク

    突然のUnbuffered Query…PDO+MySQLで入り込んだ迷宮 - Qiita
  • PHP(PDO)でファイルをMySQLに保存するときに変更しなければいけない点 - Qiita

    ファイルを物理ファイルではなく、データベースに保存する tableの設計 おそらく2択 MEDIUMBLOB およそ 16MB(2^24 - 1) 常識的な添付ファイルで使えるサイズ。 LONGBLOB およそ 4GB(2^32 - 1) 当に4GBを格納するつもりならば考え直した方が良い。 とはいえ、16MB以上であれば必然的にこのサイズ。 TINYBLOB およそ 255B テキストくらいしかないだろうし、それならバイナリで持たせる必要ないかな。 BLOB およそ 64KB プロフィール画像とか? 昔、BLOBってんだからバイナリ無制限に入るんだろうとか思ってた。そもそも無制限とかありえないし実際全然入らなかった死にたい。 MySQLの設定 max_allowed_packet 確認 show variables like 'max_allowed_packet'; | max_al

    PHP(PDO)でファイルをMySQLに保存するときに変更しなければいけない点 - Qiita
    k-holy
    k-holy 2015/11/26
    システム画像は諸々調整してBASE64エンコードしたのをLONGTEXT BINARYに突っ込んでる。1GB越えることはなさそうだけど、max_allowed_packetは覚えておこう…あとPDOのMYSQL_ATTR_MAX_BUFFER_SIZEも。
  • PDOにてMaster&Slaveのコネクションを操作するクラス(PHP)

    皆様、ご無沙汰しております。笹亀です。 いよいよきたる、9/10に新しいiPhone5 S(仮名)が発表される予定ということで、iphone4を使っている自分は今回のタイミングで変更する予定なので、いまから発表が楽しみです。 さて、日はフレームワークなどを利用している場合などであれば、あまり使用することはないですが、PDOを利用したレプリケーションしたデータベースのコネクションを切り分ける方法をご紹介したいと思います。PHPでも様々なフレームワーク(symfony,Cake,ZendFramwork)を使い開発をされるようになってきており、あまりレプリケーションの切り分けを考える必要がなくなってきておりますが、切り分けを行う方法(考え方)という視点で見ていただけますと幸いです。 ※尚、ご使用される場合は自己責任でお願い致します 概要について レプリケーションのコネクションを切り分けること

    PDOにてMaster&Slaveのコネクションを操作するクラス(PHP)
  • CakePHPのfind()で取得したデータが全てstring型になるのを、DBのカラムの型に合わせてint型で値を取得する方法(mysql) - cakephperの日記(CakePHP, MongoDB)

    CakePHP2からはPDOを使ってDBアクセスするようになりました。PDO(mysql)では、デフォルト設定でデータをfetchするとint型のカラムでもstring型として結果が返ってきます。CakePHPもこの影響を受けており、jsonデータなどに変換する際や、型を厳密に扱いたい場合に影響がます。(CakePHP1では、PDOを使っていませんがintカラムはstringで返ってきます) この問題を解決するには、PHP5.3以上の環境でPDOのPDO::ATTR_EMULATE_PREPARESをオフにすれば良いです。PDOがmysqlndドライバを利用することが前提なのですが、PHP5.4からはデフォルトでmysqlndドライバが利用されるので大丈夫です。今回はPHP5.4の環境で検証しました。 PHP5.3ではPDOがmysqlndドライバを利用するためにコンパイルオプションを指定

    CakePHPのfind()で取得したデータが全てstring型になるのを、DBのカラムの型に合わせてint型で値を取得する方法(mysql) - cakephperの日記(CakePHP, MongoDB)
    k-holy
    k-holy 2013/09/05
    DBとPHPで型が異なる以上、抽象化レイヤでは文字列で返すべきじゃないかなぁ
  • MySQL関数が推奨されていないので自作クラスをPDOで書き直した。 | jlamp

    <?php /************************************************************************ * * * PdoMysqlラッパークラス * * * ***********************************************************************/ define('PEAR_PAGER', 'Pager/Pager.php'); class PdoMysql { /* クラス内変数 */ private $dsn = NULL; private $dbh = NULL; public $param_page = 'page'; // ページ用のパラメータ名 private $hostname = 'localhost'; // ホスト名 private $username =

    k-holy
    k-holy 2013/04/04
    似たようなの作ってるので参考に。
  • 1