[MySQL]left, right, inner, outer join 用法

之前有段時間都在碰 PHP + MySQL

再做一些資料呈現的時候

觀念不是很清楚

不過有在網路上找到一些蠻詳細的資料

繼續閱讀 »

[ubuntu] JDBC 讓程式連到 MySQL

現在不管是網頁或者是程式幾乎都要用到資料庫

Java 要連到資料庫都要使用 JDBC

因為我是在寫 JSP 網頁

所以我必須再我的網頁主機上面連到資料庫

所以要安裝JDBC

環境:Ubuntu 8.04

首先先安裝 JDBC (也可以到 SUN Java 去抓)

sudo apt-get install libmysql-java

接下來要稍微修改一下 MySQL 的設定檔

sudo vim /etc/mysql/my.cnf

收尋一下 bind-address = 127.0.0.1

在前面加上註解

#bind-address = 127.0.0.1

之後登入一下 MySQL 因為要修改一個東西

選擇 權限

選擇那個root 127.0.0.1那個

按下最後面的 編輯

在主機那邊選擇 任何主機

之後要按下 執行

之後複製 JDBC 也就是所謂的驅動程式

複製到 tomcat (執行JSP用)

sudo cp -a /usr/share/java/mysql* /opt/tomcat/lib/

 

這樣就成功囉!

要備份 MySQL 資料庫主要分為兩個方法,
一是將資料庫目錄完整備份
二是使用 MySQL 內建的 mysqldump 程式。

備份資料庫目錄

MySQL 預設的儲存目錄在 /var/lib/mysql 內容,底下會有以資料庫名稱的目錄,例如 mydb 目錄便應該是 mydb 資料庫的資料。

如果 MySQL 正在運行,請先停止 MySQL,原因是可能會有資料未完全寫入,而 MySQL 會 lock 在使用中的 DB 檔案。

01 /etc/rc.d/init.d/mysqld stop
02 cd /var/lib/mysql/
03 tar zxcf mydb_backup.tgz mydb
04 /etc/rc.d/init.d/mysqld start

以上指令會先停止 MySQL,然後把 mydb 資料庫製作一個 taz 檔的備份,並儲存到 mydb_backup.tgz。
在使用以上指令時,請根據個別系統的設定作出修改。

好了,以上就麼 3 句指令就完成備份了,如果不幸的事情發生了,資料庫發生錯誤而要復原資料,可使用以下指令:

01 /etc/rc.d/init.d/mysqld stop
02 cd /var/lib/mysql/
03 mv mydb mydb_error
04 tar zxvf mydb_backup.tgz
05 /etc/rc.d/init.d/mysqld start

以上指令是先把 /var/lib/mysql/mydb 移到 /var/lib/mysql/mydb_error,然後將原先製作的備份檔解壓到 /var/lib/mysql/mydb。

mysqldump

雖然以上方法十分簡單,但有一個問題存在,那就是在備份及復原時均需停止 MySQL 的運作,這樣對於實際應用十分不便。再者,這樣備份出來的檔案,如果在相同版本的 MySQL Server 應該沒有問題,但移到版本不同的 Server 則不一定可以成功復原。

因為有以上的問題,MySQL 已經內建了備份工具,它就是 mysqldump。
mysqldump 的備份方法是將資料庫內的每個資料表結構及每筆資料產生 SQL 語句,然後存到文字檔。而且它可以自訂每一個資料表一個檔案,以及將資料表結構及資料分開儲存,以下是使用例子:

01 mysqldump --user=root -p mydb > /backup/mydb.sql

以上指令會使用 mysqldump 將 mydb 備份到 /backup/mydb.sql,在輸入指令後,需要輸入 MySQL 的 root 密碼。

至於復原資料同樣簡單,只要一句指令便完成:

01 mysqldump --user=root -p mydb < /backup/mydb.sql

以上指令會將 /backup/mydb.sql 備份檔復原到 mydb 裡面。如果你的 MySQL Server 不止一個資料庫,希望可以一次過將所有資料庫備份起來,可以寫一個簡單的 shell script 完成,又或者使用以下指令:

01 mysqldump --user=root -p --all-databases > /backup/mysql.sql

這個 –all-databases 代表所有資料庫,這樣 mysqldump 便會將所有資料庫備份到 /backup/mysql.sql。

====================================================
歡迎轉載,但轉載時請保留此宣告,不得作為商業用途
作者: Sam Tang <admin{at}phpini{dot}com>
來源網站: http://www.phpdc.com/

非常詳細的介紹
收下來做筆記!

資料庫還原補充

上面有提到用

mysqldump --user=root -p --all-databases > /backup/mysql.sql

是備份所有資料庫

還原的話就要輸入

mysql -u root -p  < ****.sql

即可

訂閱網站

FACEBOOK

雜七雜八

Copyright 2011 就是,蛋! | Theme Sco v4.0 By:Scorpio