好文 - CSS 疑難除錯 - 2013

CSS 常見的問題, ex:

  • 搞不清楚 float / position / inline / block / inline-block... 等等的問題?
  • z-index 設定都無法作用? box model 設完後都跑出去?
  • 跟設計師溝通不良?

建議可以看看 Lucien Lee 的此篇 Slide: CSS 疑難除錯

註: 按 "鍵盤右鍵" 移到下個主題, 按 "下" 顯示此主題的內容.

MySQL Replication 遇到 Got fatal error 1236 from master 修復

MySQL Replication 遇到 error 1236 就有點麻煩了~ 通常都是 binlog 出問題造成的~ (Master 或 Slave 的 binlog 壞掉都有可能造成此錯誤)

通常遇到這個狀況, 都是 Slave 的 binlog 壞掉, 就 Slave DB 的資料重倒來解決, 但是此次遇到是 Master 的 binlog 壞掉, 就有點苦了~

錯誤訊息如下:

  • Last_IO_Errno: 1236
  • Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: 'Client requested master to start replication from impossible position; the first event 'mysql-bin.003583' at 45997491, the last event read from './mysql-bin.003583' at 4, the last byte read from './mysql-bin.003583' at 4.'

閱讀全文〈MySQL Replication 遇到 Got fatal error 1236 from master 修復〉

Ubuntu 作業系統 線上導覽操作介紹 - 2013

Ubuntu Linux 要推薦別人使用, 一般人還是會先後退三步~

Ubuntu online tour 做的還不錯, 可以點選、開啟應用程式, 只不過都只能點選, 無法真的連線操作使用, 但是常用的工具 - 瀏覽器、收信、Word、Excel、影音播放都有 Demo 可以看看.

  • 註1: 目前此介紹頁只有 英文、簡體中文版.
  • 註2: Ubuntu Linux 的安裝光碟、USB 預設拿來開機後, 可以更進一步的直接試用 (真的可以操作、連線使用)

之後就拿這頁來去讓新手試玩看看(讓他知道會用到的軟體都已經內建了), 再來引導他換系統. XD

AWK 列出 第一個分隔後 的所有資料

Linux 經常使用 AWK 來依照某個條件來垂直分割字串, ex:

  • echo "a b c d" | awk '{print $2}' # 印出 b
  • echo "a b c d" | awk -F' ' '{print $2}' # 印出 b, -F: 依照一個空白分隔切割字串

但是, 上述範例 'a b c d' 想要依照空白分隔, 但是要列出 'b c d', 要怎麼做呢?

閱讀全文〈AWK 列出 第一個分隔後 的所有資料〉

Apache2 關閉 VirtualHost 的 Log 記錄

Web server(ex: Apache2、Nginx..) 的存取留下 Log 可以觀察很多東西、追蹤、找問題 等等, 但是量太大的時候, 另外一個困擾也會出現, IO 吃緊, Loading 隨著飆高.

查官方網頁的說明: Log Files - Apache HTTP Server, 居然找不到關閉的方法. XD

於 Apache2 想要將 VirtualHost 內某個 Domain 的 Log 記錄關掉, 要如何做呢?

閱讀全文〈Apache2 關閉 VirtualHost 的 Log 記錄〉

MySQL 砍不存在的 Table 造成 Replication 停擺解法

MySQL 於 Master 砍個不存在的 Table, Slave 沒有此 Table 的話, 就會造成 Replication 停擺, 會出現下述錯誤訊息: (有些不需要看到的訊息我先刪掉了)

Replicate_Wild_Ignore_Table:
Last_Errno: 1146
Last_Error: Error 'Table 'phpmyadmin.pma_table_info' doesn't exist' on query. Default database: ''. Query: 'DELETE FROM `phpmyadmin`.`pma_table_info` WHERE db_name  = 'test' AND table_name = 'item''
Skip_Counter: 1
Seconds_Behind_Master: NULL
Last_IO_Errno: 0
Last_IO_Error:
Last_SQL_Errno: 1146
Last_SQL_Error: Error 'Table 'phpmyadmin.pma_table_info' doesn't exist' on query. Default database: ''. Query: 'DELETE FROM `phpmyadmin`.`pma_table_info` WHERE db_name  = 'test' AND table_name = 'item''

上述發生的狀況是 Master 有 phpMyAdmin, Slave 沒有(所以 Slave 一開始同步也沒去建立 phpMyAdmin DB), 但是 phpMyAdmin 新版會建立自己的 DB, 於 phpMyAdmin 頁面上砍 Table 時, 他也要從自己的 pma_table_info 砍資料, 於是就造成 Replication 停擺, 就出現上述錯誤訊息.

閱讀全文〈MySQL 砍不存在的 Table 造成 Replication 停擺解法〉

iPhone 4S 耳機的使用技巧 - 2013

最近耳機有一邊都沒有聲音, 於是來把 iPhone 4S 的耳機拿出來用用看, 沒想到功能還真不少.

iPhone 耳機可以控制聽音樂、電話外, 還可以控制拍照、Siri~ 而且耳機也有內建麥克風(我一直以為就是純耳機. Orz).

閱讀全文〈iPhone 4S 耳機的使用技巧 - 2013〉

PHP if 判斷式可能犯的拼寫錯誤

這篇雖然前面有標註 PHP, 不過類似的狀況, 於 C/C++ Like 的語言都會發生~

寫這篇的主因是上週追一個 typo error, 但是這是正確標準語法, 不會產生 syntax error, 所以不好追, 再此做個記錄, 之後可以先 grep 看看是不是這種 typo error 造成的. XD

閱讀全文〈PHP if 判斷式可能犯的拼寫錯誤〉