約 3,764,924 件
https://w.atwiki.jp/nicepaper/pages/144.html
今回は更新一覧ページのリンクを押したら、更新一覧ページが表示され、さらに過去の記事等を見ることができるページング機能を作っていきたいと思います。7月20日記事 ※このページで作られるリンクから個別内容をページに表示させるプログラムは、PHPでPDOを使ってMySQLから1件だけフィールドを取得したい場合を参照してください。 イメージ 目次 設計思想 コード まとめ 設計思想 テーブルにはid,title,info_date,・・・,statusというカラムがあり、その中で、公開日(info_date)が今日以下のものかつ、statusが公開中のもの(今回の場合は2と例にとる)を取得し、5件ずつ表示させていくプログラムを作っていきます。 また、セキュリティ対策のため、ページ番号を文字列や数字以外のものを入れられた場合、1ページを表示させるようにしていきたいと思います。 コメントアウトし、ダンプの残骸を残しておきました。適宜コメントアウトをはずし実行し、状況を確認してみてください。 コード PHP !DOCTYPE HTML html head meta charset="utf-8" title エンドユーザのページング /title /head body ?php require( config.php ); $dsn = mysql dbname= .DB_NAME. ;host= .DB_HOST. ;port= .DB_PORT. ; $user = DB_USER; $password = DB_PASSWORD; try{ $dbh = new PDO($dsn, $user, $password); }catch (PDOException $e){ print( Connection failed .$e- getMessage()); die(); } //1ページあたりの表示件数 $pagesize = 5; if(isset($_GET["page"])) $page = filter_var($_GET["page"],FILTER_SANITIZE_NUMBER_INT,FILTER_NULL_ON_FAILURE); if(empty($_GET["page"])) $page = 1; if($page == NULL) $page = 1; //トータル件数取得 $offset = $pagesize*($page -1); $sql = "SELECT * FROM information WHERE info_date = ".date( Y-m-d )." AND status = 2 ORDER BY id DESC LIMIT ".$offset.",".$pagesize; //print $sql; $news = array(); foreach ($dbh- query($sql) as $row){ array_push($news, $row); } //件数取得 $sql = "SELECT COUNT(*) FROM information WHERE info_date = ".date( Y-m-d )." AND status = 2 "; $stmt = $dbh- query($sql); $total = $stmt- fetchColumn(); $totalpage = ceil($total/$pagesize); //var_dump($news); //exit; //print br totalpage .$totalpage; ? h1 更新情報一覧 /h1 ul ?php foreach($news as $new) ? li a href="detail.php?id= ?php echo htmlspecialchars($new[ id ],ENT_QUOTES,"UTF-8"); ? " ?php echo htmlspecialchars($new[ title ],ENT_QUOTES,"UTF-8"); ? /a /li ?php endforeach; ? /ul ?php if($page = 2){ echo a href="index.php?page= .($page-1). " [最新ページへ] /a ; }else{ echo [最新ページ] ; } if($page $totalpage){ echo a href="index.php?page= .($page+1). " [過去のページへ] /a ; } ? /body /html まとめ 初期は1ページにする。 数字以外が入れられないようにフィルタリングする。 公開中のものかつ、本日の日付のものを公開対象とするクエリを投げる ページ数の最大数取得は総ページ÷1ページあたりの項目数を小数点第一位で切り上げた整数値を取得するクエリもなげる。 過去ページや最新ページのリンクは自分自身のファイルに対してリンクを飛ばす というようにやっていけばよいと思います 以上
https://w.atwiki.jp/sevenlives/pages/935.html
MAXサーバ(MySQL) 読み:まっくすさーば 英語:Max Server 別名:拡張MySQLサーバ 意味: MAXサーバとはMySQLサーバの拡張版です。 ストレージ・エンジンなどが追加されています。 mysql-max-~で配付されています。 2008年01月03日
https://w.atwiki.jp/m_shige1979/pages/1397.html
execによる更新 概要 PDOオブジェクトのexecでは更新後に更新件数を返却する サンプル ソース ?php /******************************************* * PDO *******************************************/ try{ // MySQLサーバへ接続 $pdo = new PDO( "mysql host=localhost; dbname=pdotest", "root", ""); var_dump($pdo); // クエリー発行 $count = $pdo- exec("DELETE FROM CD WHERE id = 16"); var_dump($count); }catch(PDOException $e){ var_dump($e- getMessage()); } // 切断 $pdo = null;
https://w.atwiki.jp/paladin/pages/21.html
2008/02/19 JSPからのデータベース接続の実験環境構築中。 MySQLで構築する予定で実装もしてたのだが、文字化けがどうにもならず挫折。 急遽PostgresSQLにデータベースを変更。 バージョンは最新の8.3を選択 MySQLに比べるとインターネットでの情報量は少なかったが それほど困ることもなくインストールまでは終了。 JDBCドライバはスタックビルダからダウンロードする。 特に迷う余地はなかった。 Eclipseにてプロジェクトのワークフォルダ「WEB-INF」に postgresql-8.3-603.jdbc4.jar をインポートして、ドライバクラスとデータベースURLの設定を MySQLのものからPostgresに変更。 もう少してこずるかと思ったけど、案外あっさりデータベース接続成功。 参考までに、DB接続部分のソースコード。 public Connection createConnection() throws ClassNotFoundException,SQLException { Connection con = null; Class.forName("org.postgresql.Driver"); con = DriverManager.getConnection( "jdbc postgresql dictionary","name","pass"); con.setAutoCommit(true); return con; } MySQLも機会をみてもう少し文字コードまわりをいじってみたいと思うが 当面はPostgresで作業してみようと思う。
https://w.atwiki.jp/nginx/pages/29.html
mysqlとphpmyadminのインストール ubuntsの環境でnginxと組み合わせてmysqlサーバーをインストールします。 超簡単です。 私は1日程ハマリましたが。w どなたでもできるのでトライしてみましょう。 既にhttpサーバーnginxのインストールは終わっているものとします。 mysql-serverとmysql-clientをインストール apt-get install mysql-server mysql-client libmysqlclient15-dev mysqlサーバーのインストールが完了します。 nginxを再起動して、phpinfo();を実行してみてください。 mysqlとmysqliの項目が増えているはずです。 これだけでもいいのですが、データベースやテーブルの作成にSQLコマンドを打ち込まなければいけません。 面倒なのでphpmyadminをインストールします。 phpmyadminを使うことで、ブラウザ上でデータベースやテーブルの作成や管理がグラフィカルにできるようになります。 phpmyadminのインストール apt-get install phpmyadmin /usr/share/phpmyadminディレクトリ以下にphpmyadminがインストールされます。 レンタルサーバーでdomain1.comを運用しているとします。http //www.domain1.com/で説明します。 ここでhttp //phpmyadmin.domain1.com/でデータベースにアクセスできるようにします。 /etc/nginx/sites-available/domain1.com のファイルに以下の内容を追加してください。 server{ listen 80; server_name phpmyadmin.domain1.com; access_log /var/log/phpmyadmin.access_log; error_log /var/log/phpmyadmin.error_log; location / { root /usr/share/phpmyadmin; index index.php; } location ~ \.php$ { fastcgi_pass 127.0.0.1 9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /usr/share/phpmyadmin$fastcgi_script_name; include /etc/nginx/fastcgi_params; } } mysqlの実行 /etc/init.d/mysql start mysqlサーバーが起動し、/var/run/mysqld/mysqld.sock, /var/run/mysqld/mysqld.pid の2ファイルが自動作成されます。 後はレンタルサーバーのDNS Managerの(A/AAAA Records)にphpmyadminをIPアドレスと共に追加してください。 反映されるのに少し時間がかかります。 レンタルサーバーにドメインを登録するときに、wwwやmail, ftpなど設定したと思います。 これを追加することでhttp //phpmyadmin.domain1.com/ にアクセスできるようになります。 私はこれをし忘れて1日嵌ってしまいました。 これで完了です。http //phpmyadmin.domain1.com/ にアクセスしてみてください。 お疲れ様でした。
https://w.atwiki.jp/monopowers/pages/108.html
メニュー mysqlを高速化したいときのチューニング方法 ある程度大きなサービスを作る場合、実はデータベースがサービスが重い原因になってることが多いです。 たいていのDBはチューニングしないとその性能をフルに発揮できません。 ■port 通常3306。セキュリティ面から変更したほうがいい。 ■key_buffer インデックスをバッファに保存する際のメモリサイズ。 MyISAMならOSキャッシュも使うので全メモリの30-40%いれるといいらしい。 増やすと検索速度 up 例)key_buffer=256M ■innodb_buffer_pool_size InnnoDBのバッファのプールサイズ。 InnnoDBはOSキャッシュ使わないので総メモリの70-80%でがんがんいっとけ。 ■table_cache データのキャッシュサイズ。I/O減らすのに有効 数百のテーブルなら1024がベスト。 例)table_cache=256 ■thread_cache スレッドの作成・削除は負荷重いので少なくとも16はほしい。 あとはThreads_Createdの動きを見ながら。 ■innodb_additional_pool_size あんまり効果はないけど20Mほど。 ■innodb_log_file_size ログファイルのサイズ。増やすとパフォーマンスいいけど復旧に時間かかる。 64-512Mくらいまで。 ■innodb_log_buffer_size ログのバッファサイズ。 デフォルトで十分だけど増やしても8MB-16MBくらいまで。 ■innodb_flush_log_at_trx_commit 設定しないと激遅。flush logをディスクにとるかメモリかとらないか。 1がディスク、2がメモリ、0がとらない。もちろん2 ■max_allowed_packet 入力データ保持のための最大バッファサイズです。でかいファイルに必須。 例)max_allowed_packet=1M ■sort_buffer ORDER BYやGROUP BYのクエリ速度を上げる。メモリが多くない限り必要なし。 例)sort_buffer=1M ■record_buffer インデックスを使わないクエリ速度up 例)record_buffer=1M ■long_query_time この秒数を超えるとslowクエリに認定 例)long_query_time=1 ■join_buffer join用バッファ 例)join_buffer_size = 131072 ■query_cache クエリのキャッシュ量。増やしすぎると更新が反映されない場合もあるので あまりよくない。データベースのサイズに合わせて 32M-512Mくらいがベスト。 具体的なチューニングの手順としては ①slow.logを利用してボトルネックの解析 $vi my.cnfで以下を記述 long_query_time=3 log-slow-queries=/var/log/slow.log これにより3秒以上処理に時間のかかるクエリの特定が可能(long_query_timeで指定)なのでそのクエリを見直す。 ②次にサーバーの設定値を変更 $mysqld --help でサーバーの設定を見直した後に上記のリファレンスを参考に設定値を決定してください。 これでも速度の改善が見られないばあいはレプリケーションの導入やサーバーの増設orハード性能UPを検討してみてください。
https://w.atwiki.jp/takaidohigasi/pages/21.html
- 人目 ( ̄ー ̄)/~~ アリガトネ MySQL5.5 リファレンス 1. 一般情報 1.1 本マニュアルについて ORIGINAL http //dev.mysql.com/doc/refman/5.5/en/manual-info.html 本マニュアルについて このマニュアルはMySQLデータベースシステムバージョン5.5のマニュアルで、5.5.26までのリリースを取り扱います。MySQL5.5のマイナーバージョンの違いについては、リリースナンバー5.5.xにて、記載します。以前のバージョンのMySQLをご利用なら適切なマニュアルを参照してください。例えば、MySQL5.1のリファレンスマニュアルは5.1シリーズのMySQLリリースを取り扱っています。 MySQL5.6をご利用の場合は、MySQL5.6リファレンスマニュアルを参照してください。 このマニュアルは、リファレンスという位置づけなので、一般的なSQLの使い方やリレーショナルデータベースのコンセプトについては取り扱いません。 OSやコマンドライン入力に関してもまた、このリファレンスのスコープ外です。 MySQLデータベースソフトウェアは、常時開発されているので、リファレンスマニュアルも良く更新されます。最新のバージョンのマニュアルはオンライン(http //dev.mysql.com/doc/)で利用可能です。HTML,PDF、Windows CHMといったフォーマットのマニュアルも、そこから利用出来ます。 リファレンスマニュアルのソースファイルは、DocBook XMLフォーマットで書かれています。HTMLや、その他のフォーマットに関しては、最初にDocBook XSLスタイルシートを用いて、自動生成されています。DocBookについての情報は、http //docbook.org/を参照してください。 MySQLに関しても質問があれば、メーリングリストやフォーラムで質問することが出来ます。1.6.1章の「MySQLのメーリングリスト」および、1.6.2章の「MySQLフォーラムでのMySQLコミュニティーサポート」を参照してください。マニュアル自体の追記や間違えの修正等については、http //www.mysql.com/company/contact/に送ってください。 このマニュアルの初版は、David AxmarkとMichael "Month" Wideniusによって書かれました。Paul Dubois, Stefan Hinz, Philip Olson, John Russellそして、Jon Stephensによって構成されるMySQLドキュメンテーションチームによってメンテナンスされています。
https://w.atwiki.jp/yukobayashi/pages/27.html
mac mysql install 以下のサイトから落としてきて、ガシガシ進めるだけ http //dev.mysql.com/downloads/ terminalから default port 3306(指定なくてもいける) cd /usr/local/mysql ./mysql -uroot -p3306
https://w.atwiki.jp/simamaru/pages/25.html
セットアップ(MAC編) 軽く使ってみる?
https://w.atwiki.jp/ohden/pages/520.html
MySQL CentOS 6.4 MySQL 5.1.69 http //dev.mysql.com/ tools MySQL Workbench install tips mysqlで良くやりたくなる操作 DBとUSERに対する操作 selectの結果をfile出力したい sh scriptからsqlを実行したい Database/MySQL/tips/ 更新日: 2013年09月24日 (火) 11時49分52秒 mysql -h${server} -u{db_user} -p${db_pass} -D${db_name} -e"${sql}" -- (s1n) 2013-09-18 17 17 49 名前 コメント すべてのコメントを見る