MySQL: [ERROR] Unknown character set 問題

早前升級一台主機的 MySQL Server,升級後發現部份資料表無法開啟,報出的錯誤訊息是:Unknown character set: ‘BIG5′出現這個問題的原因是新版本 MySQL 安裝時沒有安裝額外的字集,而對上一個版本的 MySQL 是用 YUM 安裝,所有透過套件工具安裝的 MySQL 也會預設安裝所有字集,解決方法是重新編譯 MySQL 並加上所有的字集的選擇 –with-extra-charsets=complex,編譯語法如下: ./configure — prefix=/usr/local/mysql –with-extra-charsets=complex如果在 FreeBSD 遇上這個問題,而 FreeBSD 內的 MySQL 是透過 ports 安裝的話,便要使用 WITH_XCHARSET=all …

編譯及安裝 MySQL

雖然在 Unix Like 環境已經有很多預先編譯好的軟件,例如 rpm 及 deb,但我較喜歡使用編譯的方法安裝軟件,尤其是 server,以下是編譯及安裝 MySQL 4.1.18 的方法:1. 到 MySQL Mirror 下載 source code 並儲存到主機上。2. 執行以下指令: 3. MySQL 已經安裝完成,現在需要改變 mysql 目錄的 owner: 4. 執行以上指令後,便可以啟動 MySQL 並更改密碼: 這時應該進入了 …

修理電風扇 — 換啟動電容

家裡有一台電風扇不轉了, 看看是否可以修理, 檢查了開關及插蘇沒有問題, 打開風扇罩後, 撥一撥扇葉又轉了, 如果感葉扇葉沒有卡住很順, 那這種情況大多數就是啟動電容故障.修理時沒有拍照, 但其實每台電風扇的結構都大同小異, 打開電風扇後面的保護罩, 有一個圖中看到的電容, 那個就是啟動電容:用他錶(三用電錶)轉到電容檔量度一下, 電容的規格是 1.5uf, 但現在只有 439nf (0.439uf), 這粒電容可以在電子零件行購買, 一般都是幾塊錢一粒, 因為我不熟悉的關係, 所有拍了照片到店家買相同規格的.換上新電容後風扇就轉了, 順便給風扇加一點油, 雖然是辛苦一點, 但還是有賺到的感覺, 起碼堆填區又少一件垃圾.

車胎選購需知

車胎是汽車的損耗品,需要定期更換,而車胎有分各種特性,例如有著重咬地性能,有則著重較寧靜或耐用度。而除了一些特性外,車胎的規格也有分別,如果全都不懂的話,去到胎鋪很容易被騙,而車胎的所有資源大都集中在車胎側邊的文字,主要有兩項資訊:1. 尺寸 以我的車胎為例,尺寸大小是 195/55R15 84V,它們的意思為:闊度/扁平度 鈴闊一般上如果只換車胎,只要買回跟現在相同規格的就可以。2. 出廠日期 一般上車胎不會以日期方式表示,而是以一年的第幾個星期表示,例如:x2505這就是 05 年第 25 星期出廠,選購時一定要選擇較新的,而且一、兩年前出廠的一定不要買,因為雖然不是二手,但始終車胎上面的物質會老化。

Linux 下找出體積最大的檔案/目錄

當發現系統硬碟空間突然上升時,想知道那個檔案或目錄佔用最多空間,可以用 du + sort + head 指令完成,它們的作用分別為:du: 計算目錄所使用的空間 sort: 將輸入的資料排序 head: 將輸入資料的最開頭幾行資料輸出假如發現 /home 裡面的空間使用異常時,可以用以下指令查看 /home 裡面頭 10 個使用最多硬碟空間的檔案或目錄: # du -a /home | sort -n -r | head -n 10

Crontab 排程定時自動執行 PHP

很多情況下 PHP 需要定時自動執行,這個可以用 Crontab 排程定時執行實現,以下是幾種實現方法:方法一: 1. 在 PHP 程式的第一行加入: 請留意,我的 PHP 是路徑在 /usr/bin/php,請根據你的 PHP 執行檔位置作出修改。2. 將 PHP 程式給予可執行權限:chmod +x testing.php3. 執行 crontab -e,然後加入以下內容:00 00 * * * /path/to/testing.php > /dev/null …

Redhat / Centos 安裝 DNS 伺服器

安裝環境 Centos 5.7 1. 安裝 DNS 所需套件: 只要用 yum 指令便可以一次過想所需的套件安裝。在預設的情況下 Centos 不會建立 named.conf,要用以下方法建立: 2. 更新 root.zone到 ftp://rs.internic.net/domain/root.zone 下載最新的 root.zone 資料檔,然後放到 /var/named/var/named/ 裡面。然後就可以用 /etc/rc.d/init.d/named start 啟動 DNS Server。啟動後可以輸入以入指令測試 DNS Server 是否正常運作: …

用 PHP 實現線上人數統計

基於 HTTP 協定的限制,要實現統計線上人數會很困難。而現時大部份網站或論壇所使用的方法是,統計在過去某段時間內有所活動的訪客,便計算為線上人數,本文會介紹使用 PHP + MySQL 製作一個線上人數計數器。在開始前請先確定網頁伺服器支援 PHP,以及有一個可用的 MySQL 資料庫,如果沒有 MySQL 資料庫,請向你的系統管理員或網頁寄存供應商查詢。建立資料庫 第一步需要先建立一個 MySQL 資料表,可以在文字模式或 phpmyadmin 下執行以下 SQL 語句:PHP 程式碼 當建立以上資料表後,便可以編寫 PHP 程式了,以下例子假設你的 MySQL 登入資料如下:Host: localhost username: dbuser password: dbpasswd …

PHP 製作簡單 HTTP 密碼認證

如果網站內有些網頁只希望提供給管理員,那麼便需設置一個密碼認證功能。在 PHP 中製作密碼認證的方法有好幾種,以下介紹較為簡單的 HTTP authentication。需要 PHP 在 Apache module 下執行才有這功能,而在 IIS 及 PHP 使用 CGI Mode 安裝則沒有這個功能。HTTP authentication PHP 內實現 HTTP authentication 的原理是使用 header() 傳送一個 “Authentication Required” 的訊息到訪問者的 browser,然後便會彈出一個 pop …

用 PHP 上傳檔案

建文 HTML 表單 要製作用作上傳檔案的表單與傳統的表單差不多,但必須將表單中的 enctype 屬性設成 multipart/form-data。enctype 屬性是指定瀏覽器對表單中的參數進行編碼的方法,預設值為 application/x-www-form-urlencoded。 以下是建立表單的例子:upload.html 處理上傳檔案 建立了以上的 HTMl 表單後,下一步要做的就是後端的處理。在 PHP 中可以透過二維陣列 $HTTP_POST_FILES 或 $_FILES 來存取所上傳的檔案詳細內容。就以以上表單為例,輸入元素名為 userfile,各陣列元素為:$_FILES — 檔案在客戶端電腦上的檔案名稱 $_FILES — 檔案的 MIME 類型,例如 “image/gif” $_FILES …