2014年6月12日木曜日

Apacheクックブック

1. .htaccessでHTTPアクセスをSSLでリダイレクト(逆もアリ)

2. [tech]HTTP GETメソッドのURIの長さ制限を調べてみた

3. Apacheから強制的にキャッシュを使わせないようにする方法

4. Apacheのバージョン確認方法

5. .htaccessによるリダイレクト徹底解説(RewriteRuleなど)

6. apacheでメモリリークしないようにするチューニング

7. 転ばぬ先のApacheチューニング(〜中規模)

8. Apache チュートリアル: .htaccess ファイル

9. php + apache のメモリ量をおさえる

10. さくらVPSで一日6万PVを処理するためにしたこと

11. Apacheでファイル一覧を表示させないようにするには

12. Apacheインストール後にディレクトリ一覧やテストページを非表示にする

13. iPadのSafariでオレオレSSLクライアント証明書を使っていると動画再生できない

14. .htaccess活用法

15. Basic認証を設定する方法

16. apache2でURLの最後のスラッシュの省略をさせない

17. SSL設定エラー : ssl_error_rx_record_too_long

18. WebDAV設定
  1. Apache2.0+WebDAVの設定(Linux編) 
  2. WebDAVクライアント/サーバ環境の構築  
19. CentOS に Apache HTTPD を導入して SSL を有効にする

20. Options -FollowSymLinks
  1. Apache HTTPD: `Options -FollowSymLinks` は不完全
  2. シンボリックリンクを用いた「ハッキング手法」を、ロリポップの大規模サイト改ざん事例から学ぶ
21. アクセス制限の記述(Order, Allow, Deny)

22. アクセスログのフォーマット
23. SSLのパスフレーズ(Pass Phrase Dialog)入力を省略してApacheを起動する

24. logresolve - apacheのログのアクセス元IPを逆引きする

Sendmailクックブック

1. sendmail基本設定

2. ドメイン設定も含めSendmailでメール送受信ができるようになるまで試行錯誤まとめ

3. sendmail 基本 (テスト方法が充実)

4. メールログ(送信:sendmail)の見方は?

5. sendmailのメールキューを確認、削除する方法

6. OP25B対策Part2 メールサーバを構築し別メールサーバに全転送【sendmail編】

7. sendmailを使って内部メールをgmailへ転送する

8. システム設定ファイルを知ろう~/etc/aliases~

9. /etc/aliases を編集して root のスプールにメールを溜めたくない!エイリアス定義で転送だ!

10. sendmail、qmail、Postfixのそれぞれの良さと違い

11. ログレベルの変更とメールログの解析

12. 設定ファイル一覧

13. linuxユーザを追加したときsendmailに必要な設定を行う

14. バーチャルドメインメールサーバーの構築

15. Sendmail のログレベルの変更とメールログの解析

16. 設定ファイルの設定値の詳細が書いてある

17. SMTP AUTH(SMTP認証)に対応させる方法

18. メールログに"Domain name required for sender address"とでてメールが送信できない場合

19. SPF(Sender Policy Framework)とは

2014年6月4日水曜日

CSSクックブック

1. text-shadow テキストに影をつける

2. text-indent 一行目のインデント幅を指定する

3. text-transform テキストの大文字表示・小文字表示を指定する

4. letter-spacing 文字の間隔を指定する

5. white-space ソース中のスペース・タブ・改行の表示の仕方を指定する

6. box-sizing ボックスサイズの算出方法を指定する

7. appearance プラットフォームにおける標準的なUIの外観にする

8. border-radius 角丸をまとめて指定する

9. outline アウトラインのスタイル・太さ・色を指定する

10. CSS: marginの正しい理解 論理プロパティ margin-startなど

11. linear-gradient() 線形グラデーションを指定する

12. ボックスモデルCSSプロパティの詳細とデモ displayプロパティ + table-row-group値

13. CSSで中央配置(センターリング)する方法

14. 行間を調節するプロパティ line-height:

15. フォントサイズの指定はCSS3の「rem」が便利そう

16. フォームのradiobutton、checkbox、selectのずれを調整する

17. font-familyとは?

18. word-breakプロパティとword-wrapプロパティの違い

19. CSS の拡張機能 webkit

20. writing-mode

21. CSSで文字を選択(ドラッグ)した時の背景色を変える(::selection)

22. :focus擬似クラス フォーカスされた要素にスタイルを適用する

23. Webサイト制作におけるoverflow:hiddenの効果

24. font-weight フォントの太さを指定する

25. ビットマップフォントとアウトラインフォントの違い

26. CSS3のtext-strokeとtext-shadowで文字の縁取り(アウトライン)を表現した時の違い

27. 1分でできる Google Web Fonts を使って CSS3 の Web Font を使おう

28. ボックス(レイヤー)の重なり順序を指定する

29. 素敵なダイアログを作るための資料
  1. 使いやすくなった!UI素材とテクニック集/CSS jQuery版 
  2. デザインから選ぶjQueryダイアログ集
  3. 保存版!CSS3で出来る素敵なデザインやアニメーションをまとめてみた

2014年6月3日火曜日

MySQLクックブック

0. コネクション
  1. MySQLでtoo many connectionsエラーが発生した際の対処方法
  2. MySQL DBのコネクション数の確認とか
  3. MySQL、「too many connections」エラーを解消する
  4. MySQLで「Too many connections」のエラー
1. コメント構文

2. MySQLクイック・リファレンス

3. MySQL C API

4. 外部キー
  1. FOREIGN KEY 制約
  2. 外部キー制約を活用する 
  3. 外部キー制約(FOREIGN KEY) 
  4. MySQL #1452 – Cannot add or update a child row: a foreign key constraint fails
5. カラムの名前と定義の変更

6. MySQL SQLファイル(スクリプト)の実行

7.  コメントを含めてテーブルを作成する

8. カラムの追加と削除

9. Federated
  1. Federatedテーブルの作成(リモートDB上のテーブルとの同期)
  2. MySQLのFEDERATEDストレージエンジンを利用する 

10.  トリガ
  1. トリガの作成
  2. MySQLでトリガ使って別テーブルに自動でコピる
  3. MySQL トリガの作成、確認、削除
  4. MySQL のトリガで mruby を実行する
  5. MySQL で UDF を定義しよう
  6. MySQL 5.7でやっと(?)1テーブル複数トリガーが仕掛けられるようになった 
  7. トリガに関する情報の取得 
11. MySQLの運用で役立つコマンド集(統計情報更新など)

12. MySQLからMariaDBへの移行作業メモ

13.MySQLのバックアップリストア
  1. バックアップ&復元 
  2. 5.1.8以降Warning発生 
  3. optオプションの意味
  4. ダンプファイルから任意のテーブルのみリストアする
  5. MySQLのバックアップ運用について色々
  6. XtraBackupを使ってMySQLをバックアップしよう
  7. MySQLマニュアル データベースサーバーのバックアップ
  8. MySQLのバックアップツール比較
  9. データのインポート・エクスポート ファイル読込
  10. LOAD DATA INFILE構文のキーワード
  11. MySQLでデータをエクスポートする(テーブル指定) 
14. ユーザとDB作成

15. InnoDBについて
  1. mysqlでInnoDBが使えない件
  2. InnoDB Pluginことはじめ。快適ストレージエンジン生活はじまる!
  3. デフォルトストレージエンジンの設定
  4. MySQL InnoDBを無効にする
  5. MySQLの「InnoDB」と「MyISAM」についての易しめな違い 
  6. MySQLでテーブル毎に設定されているストレージエンジンを確認する方法
16. MySQL複数プロセス起動
  1. 複数MySQLのセットアップ備忘メモ
  2. MySQLプロセスを一台のサーバで複数起動
  3. MySQLで外部から接続するときにチェックする項目 
  4. mysqld_multiの設定方法 
  5. MySQLサーバ複数起動メモ
  6. mysql_multi「を・・使わない」で同一サーバ内に複数インスタンスを立ち上げる方法
17. MySQLの照合順序

18. 文字コード関連
  1. データベースの文字コードを調べる
  2. 文字コードの設定(文字コードの扱い方の説明もあり)
  3. MySQLでcharacter_set_databaseがlatin1になってしまう問題の対応方法
  4. テーブルの文字コードを調べる
  5. MySQL で utf8 と utf8mb4 の混在で起きること 
19. MySQLで特定のカラムを持つテーブルを検索する

20. 誰も教えてくれなかったMySQLの障害解析方法

21. MySQLに真偽値を格納する場合はbit(1)型のフィールドが最適

22. あいまい検索(パターンマッチングで比較)

23. セキュアな接続のための SSL の使用

24. MySQLサーバーのバージョン確認方法

25. MySQLで他のサーバからのアクセスを許可する

26. SSHのポートフォワーディングでMySQLに接続する方法

27. 限界までMySQLを使い尽くす!!

28. 整数型

29. 複合キーを単一キーに変更する場合のSQL文

30. 予約語と同じテーブル名はバッククォートで囲む

31. キャスト関数と演算子(型変換)

32.  レプリケーション
  1. レプリケーションの機能と問題
  2. MySQLマルチマスタ構成キー重複を避けるには
33. 「every derived table must have its own alias」というエラーが表示される

33. テーブル定義を取得する方法

34. 外部キー貼り直し手順メモ

35. 後からユニークインデックスを追加するには

36. SELECT文でcsv出力
  1. SELECT文でcsvを出力する
  2. CSVでエクスポート(テーブル単位 or クエリの結果を丸ごと)
  3. MySQLでコマンドから直接クエリを実行し、CSVファイルに保存する 
37. ログ
  1. ログの種類とログの仕方を調べてみた(実施例)
  2. スロークエリログで問題のクエリをあぶり出す
  3. MySQLのログファイル ログの種類と保存先
38. MySQLパフォーマンスチューニングのためのインデックスの基礎知識

39. MySQL の warnings をすぐに表示させる方法

40. MySQL の同時接続数 (max_connections) の変更

41. 欠番

42. show profileでフェーズごとの実行時間を見る

43. MySQLのポート番号を調べる

44. Linux(CentOS)のMySQLへ外部接続する

46. lockの確認とプロセスの削除

47. InnoDBで行ロック/テーブルロックになる条件を調べた 

48. テーブル毎に設定されているストレージエンジンを確認する方法

49. テーブルのロック

50. 外部キーやユニークキーなどが貼られているか確認 show create table

51. データ型と最小値/最大値

52. データベースを初期化する

53. SQL 問い合わせ結果を垂直に表示する

54. 親テーブルの更新/削除の時の挙動

55. 外部キー作成時、外部キー名の注意点
     以下のようにCONSTRAINTをつけてかつ、名称を指定しないと、自動で名前が設定される。
   かつ、KEYには、名称が付与されず、KEYのみの除去が出来なくなるため注意。
     <SQL例>
     ALTER TABLE xxxx ADD CONSTRAINT FK_xxxx_01 FOREIGN KEY(aaa,bbb) REFERENCES t_m_site(aaa,bbb) ON UPDATE CASCADE ON DELETE CASCADE;
     <上記SQLで外部キーを追加した場合のshow create table結果>
      CREATE TABLE `xxxx` (
        `aaa` mediumint(8) unsigned zerofill NOT NULL DEFAULT '00000000' COMMENT '会社ID',
        `bbb` varchar(32) NOT NULL COMMENT 'サーバー名',
        `cccc` mediumint(9) NOT NULL DEFAULT '0' COMMENT 'グループNO',
        PRIMARY KEY (`company_id`,`svname`,`group_no`),
        KEY `FK_xxxx_01` (`svname`,`company_id`),
        CONSTRAINT `FK_xxxx_01` FOREIGN KEY (`aaa`, `bbb`) REFERENCES `t_m_site` (`aaa`, `bbb`) ON DELETE CASCADE ON UPDATE CASCADE
        ) ENGINE=InnoDB DEFAULT CHARSET=utf8
     <CONSTRAINTなし、名称未指定の場合のshow create table結果>
      CREATE TABLE `xxxx` (
        `aaa` mediumint(8) unsigned zerofill NOT NULL DEFAULT '00000000' COMMENT '会社ID',
        `bbb` varchar(32) NOT NULL COMMENT 'サーバー名',
        `cccc` mediumint(9) NOT NULL DEFAULT '0' COMMENT 'グループNO',
        PRIMARY KEY (`company_id`,`svname`,`group_no`),
        KEY (`svname`,`company_id`),
        CONSTRAINT `FK_xxxx_xxx_01` FOREIGN KEY (`aaa`, `bbb`) REFERENCES `t_m_site` (`aaa`, `bbb`) ON DELETE CASCADE ON UPDATE CASCADE
        ) ENGINE=InnoDB DEFAULT CHARSET=utf8

56. MySQLのデータベースの容量を調べる

57. MySQL ibdata1が肥大化する理由(記事の意訳)

58. InnoDBデータファイルのサイズを変更するには(自動拡張時の拡張サイズを参考にした)

59. ユーザー権限
  1. 権限の種類と設定されている権限の確認
  2. MySQLユーザの追加
  3. MySQLのユーザー一覧を確認
  4. パスワードの設定 
  5. [MySQL]権限の確認と付与
  6. MySQLに外部ホストから接続できるように設定する
  7. MySQL の権限のコマンドまとめ。
  8. ユーザーの削除
60. MySQLのコマンド履歴を見る方法

61. 日時
  1. 日付データへの変換
  2. 日時の計算(加算・減算) 
  3. 日付関数、システム日付、切捨、日付差、日付加算、書式 

62. PostgreSQLとMySQLはどちらかに明確な優位性がありますか?

63. MySQLでレコードに登録された文字列を置換する

64. 取得するデータの数と開始位置を指定

65. サブクエリ
  1. MySQL | エラー対策 | Every derived table must have its own alias
66. [MySQL] 激重の原因はDNS逆引きでした

67. MySQLで、シェルスクリプトからバッチ処理でSQLを実行する方法

68. MySQLでの正規表現

69. LIKEフィルタに対するインデックス

70. AUTO_INCREMENT
  1. 従来の InnoDB の自動インクリメントロック
  2. 言っておくけど、AuroraクラスターでAUTO_INCREMENTのカウンタが同期されないのはバグじゃないからな
  3. 【mysql】auto_incrementの値を確認、変更。からの、0(ゼロ)入れたり歯抜け直してみたり