2014/07/28

Linux Mint(or ubuntu) 快速安裝 postgresql 9.3


安裝 postgresql 9.3 伺服器程式
mt ~ # apt-get install postgresql-9.3

安裝 pgadmin3 的客戶端管理工具
mt ~ # apt-get install pgadmin3

切換到 postgres 帳號, postgres 預設沒有密碼且是 superuser 權限
mt ~ # su - postgres
postgres@mt ~ $ ls
9.3
postgres@mt ~ $ pwd
/var/lib/postgresql

建立使用者帳號,-r 能夠建立 role ,並且賦予  -s 超級使用者、-d 能夠建立 DB 、-l 能夠登入系統、-P能夠建立密碼
postgres@mt ~ $ createuser --r mtchang -s -d -l  -P
Enter password for new role:
Enter it again: 

建立一個資料庫 mtchang 屬於 -O mtchang 使用者的
postgres@mt ~ $ createdb  -O mtchang mtchang

設定 PGADMINIII 客戶端工具






以上為本機使用 postgresql 的安裝方式,如果還要讓外面的 IP 可以連到這台請參考這篇:

 http://jangmt.com/wiki/index.php/PostgreSQL_install

 另外附上 createuser 和 createdb 兩個指令的 HELP 說明


postgres@mt ~ $ createuser --help
createuser creates a new PostgreSQL role.

Usage:
  createuser [OPTION]... [ROLENAME]

Options:
  -c, --connection-limit=N  connection limit for role (default: no limit)
  -d, --createdb            role can create new databases
  -D, --no-createdb         role cannot create databases (default)
  -e, --echo                show the commands being sent to the server
  -E, --encrypted           encrypt stored password
  -i, --inherit             role inherits privileges of roles it is a
                            member of (default)
  -I, --no-inherit          role does not inherit privileges
  -l, --login               role can login (default)
  -L, --no-login            role cannot login
  -N, --unencrypted         do not encrypt stored password
  -P, --pwprompt            assign a password to new role
  -r, --createrole          role can create new roles
  -R, --no-createrole       role cannot create roles (default)
  -s, --superuser           role will be superuser
  -S, --no-superuser        role will not be superuser (default)
  -V, --version             output version information, then exit
  --interactive             prompt for missing role name and attributes rather
                            than using defaults
  --replication             role can initiate replication
  --no-replication          role cannot initiate replication
  -?, --help                show this help, then exit

Connection options:
  -h, --host=HOSTNAME       database server host or socket directory
  -p, --port=PORT           database server port
  -U, --username=USERNAME   user name to connect as (not the one to create)
  -w, --no-password         never prompt for password
  -W, --password            force password prompt

Report bugs to <pgsql-bugs@postgresql.org>.


postgres@mt ~ $ createdb --help
createdb creates a PostgreSQL database.

Usage:
  createdb [OPTION]... [DBNAME] [DESCRIPTION]

Options:
  -D, --tablespace=TABLESPACE  default tablespace for the database
  -e, --echo                   show the commands being sent to the server
  -E, --encoding=ENCODING      encoding for the database
  -l, --locale=LOCALE          locale settings for the database
      --lc-collate=LOCALE      LC_COLLATE setting for the database
      --lc-ctype=LOCALE        LC_CTYPE setting for the database
  -O, --owner=OWNER            database user to own the new database
  -T, --template=TEMPLATE      template database to copy
  -V, --version                output version infor

postgres@mt ~ $ createuser --r mtchang -s -d -l
postgres@mt ~ $ createdb --help
createdb creates a PostgreSQL database.

Usage:
  createdb [OPTION]... [DBNAME] [DESCRIPTION]

Options:
  -D, --tablespace=TABLESPACE  default tablespace for the database
  -e, --echo                   show the commands being sent to the server
  -E, --encoding=ENCODING      encoding for the database
  -l, --locale=LOCALE          locale settings for the database
      --lc-collate=LOCALE      LC_COLLATE setting for the database
      --lc-ctype=LOCALE        LC_CTYPE setting for the database
  -O, --owner=OWNER            database user to own the new database
  -T, --template=TEMPLATE      template database to copy
  -V, --version                output version information, then exit
  -?, --help                   show this help, then exit

Connection options:
  -h, --host=HOSTNAME          database server host or socket directory
  -p, --port=PORT              database server port
  -U, --username=USERNAME      user name to connect as
  -w, --no-password            never prompt for password
  -W, --password               force password prompt
  --maintenance-db=DBNAME      alternate maintenance database

By default, a database with the same name as the current user is created.

Report bugs to <pgsql-bugs@postgresql.org>.




2014/07/27

WAMPServer 2.5 php_pgsql.dll 有問題?無法正常的工作。

WAMPServer 2.5 php_pgsql.dll 有問題?無法正常的工作。

因為想要讓開發的工作更有效率,於是在自己的電腦上安裝 WAMP 當成本地端的開發工具

WAMP 預設的 DEBUG 工具很齊全,對於除錯真的很方便。

但今天改開發 PHP + PostgreSQL 的程式,發現明明 PHP_PDO_PGSQL 都有啟動,但是 phpinfo()

怎樣都看不到相關的模組訊息。(應該要有 pdo_pgsql and pdo_pgsql 這兩個模組才是)

查了半天,發現在 PHP for windows 5.25 "php_pgsql.dll" 還可以工作,升級 PHP 到 5.5.12 就不正常了....

快速的修正方式:

(1) 安裝 Postgresql for windows 版,在本地端機器上面。
http://www.enterprisedb.com/products-services-training/pgdownload#windows
裝好後,看看在地下的路徑是否有這個檔案 libpq.dll

(2) 將該檔案讓 apache 掛載

打開 windows apache httpd.conf 設定檔,找個好地方把底下這一行放到設定檔案內,然後重新啟動 APACHE

LoadFile "C:/Program Files/PostgreSQL/9.3/bin/libpq.dll"

(3) 去看看你的 http://localhost/?phpinfo 應該就有 pdo_pgsql and pdo_pgsql 這兩個模組了。

pdo_pgsql and pdo_pgsql 這兩個模組


參考:
http://stackoverflow.com/questions/551734/php-not-loading-php-pgsql-dll-on-windows

2014/07/23

jquery ajax 及事件用法的網摘紀錄



W3school 用來呼叫 jquery 使用ajax 的方法 -- jQuery ajax - post() 方法

jquery 官方網站關於 ajax 使用的說明 -- jQuery.post()

常用的表單驗證事件說明 --  [jQuery] jQuery常用的表單驗證事件

Jquery 的滑鼠點擊事件 -- http://api.jquery.com/click/

BootStrap 的 GRID 系統說明  -- Bootstrap 2.x 與 3 的重要差異(二):grid系統的變革

表單驗證防止天然呆的 JS for bootstrap --- http://bootstrapvalidator.com/

不是很熟 Javascript 建議最好從基礎了解 -- http://www.w3schools.com/js/default.asp

不得不說 W3school 的 JQUERY 說明做的很不錯 -- http://www.w3schools.com/jquery/default.asp

以上,簡單整理最近在用 Jquery 的心得及連結。

2014/07/19

WAMP 的 Apache Alias 權限問題(AH01630 ERROR)



* WAMP 的 Apache Alias 權限問題(AH01630 ERROR) 在目前版本的 WAMPServer 2.5 上面,其中的 Apache Alias 建立時,如果你使用預設的方式建立 Alias 設定檔,在重新載入後會產生權限錯誤。這問題的原因是 WAMP 把 Apache 更新到 2.4 以後的最新版本了,但是原本產生的 Alias 程式還是停溜在舊版本的設定值。

修正方法,請設定針對 Apache 2.4 以後的語法支援即可。

Alias /pma/ "C:/wamp/apps/pma/"

   Options Indexes FollowSymLinks MultiViews
   AllowOverride all
 
    Require local
 

 
    Order Deny,Allow
 Deny from all
 Allow from localhost ::1 127.0.0.1

錯誤訊息類似這樣:

[authz_core:error] [pid 5600:tid 832] [client 127.0.0.1:49226] AH01630: client denied by server configuration: C:/Apache24, referer: http://localhost/res/


延伸閱讀請參考:http://stackoverflow.com/questions/18392741/apache2-ah01630-client-denied-by-server-configuration

2014/07/18

Ext2 File System Driver for Windows( Windows 下讀寫 ext2 及 ext3 檔案系統)

Ext2 File System Driver for Windows( Windows 下讀寫 ext2 及 ext3 檔案系統)
通常我是用在雙系統的環境遇到大或多的檔案才使用,目前的 windows 及 linux 在平時工作的環境上都已經很成熟,除非遇到一些非 windows 不可的應用軟體資料。在切換 OS 的時候可以透過這方便的把它掛成一個磁碟來處理資料。

官方網站:http://www.ext2fsd.com/

功能:在 windows 下以磁碟機方式掛載 ext2 or ext3 or ext4 的檔案系統來讀寫

限制:Linux 下的 ext3/ext4 擴充功能 ACL 、符號連結等.....

下載:http://sourceforge.net/projects/ext2fsd/files/ --> ext2FSD(2014/5/11) 更新

Ext2 的設定頁面,直接將 ext3 or ext2 的分割區設定為一個磁碟代號就可以。