下載:
URL: http://dev.mysql.com/downloads/mysql/5.5.html#downloads
選擇No thanks, juststart my download.
mysql-5.5.36-win32.msi 33.7M
mysql-5.5.36-winx64.msi 35.3M
Navicat V8.2.12ForMySQL使用:
1. 點擊串連,輸入自訂的串連名和root帳號的密碼,建立了串連。
2. 開啟串連,後就可以對錶和視圖等進行操作,非常方便。
注意:
1. 如何本地安裝,只需要選Development的低串連數就可以了,少佔記憶體,安裝的時候順便配下密碼。
2. 安裝好了MySQL之後,最好再安裝一個MySQL的外掛程式
Navicat V8.2.12ForMySQL,可視化,介面友好,是非常好的管理工具。
使用:
1. 安裝好後,可以在啟動欄看到MySQL 5.5 Command Line Client
2. 點擊後輸入密碼,後即可進入工作模式,或在運行欄輸入
mysql –uroot –p 再輸入密碼也可。
mysql>
注意:
1) 串連遠端主機命令: mysql –h主機地址 –u使用者名稱 –p地址
假設主機:192.168.0.1 user: root pwd:1234
則命令: mysql –h198.168.0.1 –uroot –p1234
2) 此處可用空格,可不用,所以又可以寫成
Mysql –h 192.168.0.1 –u root –p 1234
3. 退出
exit
修改密碼:
1. 增加新密碼:Dos進入mysql/bin目錄下, 執行下面命令:
mysqladmin-u root –p1234 //-->1234為新增加的密碼.
2. 修改密碼:
mysqladmin -u root–p1234 password abcd //à新密碼:abcd
使用者管理:
格式:grant select on 資料庫.* to 使用者名稱@登入主機 identified by "密碼"
例1、增加一個使用者test1密碼為abc,讓他可以在任何主機上登入,並對所有資料庫有查詢、插入、修改、刪除的許可權。首先用以root使用者連入MYSQL,然後鍵入以下命令:
grant select,insert,update,delete on *.* to test1@"%"Identified by "abc";
但例1增加的使用者是十分危險的,你想如某個人知道test1的密碼,那麼他就可以在internet上的任何一台電腦上登入你的mysql資料庫並對你的資料可以為所欲為了,解決辦法見下例
例2、增加一個使用者test2密碼為abc,讓他只可以在localhost上登入,並可以對資料庫mydb進行查詢、插入、修改、刪除的操作(localhost指本地主機,即MYSQL資料庫所在的那台主機),這樣使用者即使用知道test2的密碼,他也無法從internet上直接存取資料庫,只能通過MYSQL主機上的web頁來訪問了。
grant select,insert,update,delete on mydb.* to test2@localhostidentified by "abc";
如果你不想test2有密碼,可以再打一個命令將密碼消掉。
grant select,insert,update,delete on mydb.* to test2@localhostidentified by "";
常用命令:
1. 顯示資料庫列表
mysql>show databases;
+--------------------+
|Database |
+--------------------+
|information_schema |
|mysql |
|performance_schema |
|test |
+--------------------+
4 rows in set (0.05 sec)
2. 使用某個資料庫.
mysql> use mysql; //-->mysql內建資料庫
mysql> show tables; //-->看多少表
+---------------------------+
| Tables_in_mysql |
+---------------------------+
| columns_priv |
| db |
| plugin |
+---------------------------+
3 rows in set (0.25 sec)
3. 顯示表結構
mysql> desc proc;
+----------------------+-----------------------------
| Field | Type
+----------------------+-----------------------------
| db | char(64)
| name | char(64)
+----------------------+-----------------------------
2 rows in set (0.21 sec)
4. 建庫
mysql> create database school; //-->school 資料庫名
drop database if exists school; //-->存在則刪除;
5. 建表
mysql> use school; //-->開啟庫.對錶操作必須先選資料庫
mysql>
create tableteacher
(
id int(3)auto_increment not null primary key,
name char(10) notnull,
addressvarchar(50) default 'ChengDu',
year date
);
6. 刪庫|刪表
mysql> drop database school;
mysql> drop table teacher;
7. 插入|更新
insert into teacher values(001,'Wang','BJ','1988-10-10');
insert into teachervalues(002,'Jiang','SH','1999-10-10');
update teacher set address=’CD’ wherename=’Wang’
8. 刪除|查詢
mysql> delete * from teacher wherename='Jiang';
mysql> select * from teacher; //-->語句以分號結束
9. 顯示行數|列數
select count(*) from teacher;
select sum(*) from teacher;
注意:如果命令很多,DOS進入mysql/bin下面執行
mysql -u root -pabcd <c:\school.sql
例如: 拿下面的命令放在school.sql裡面,同時完成建庫,表,插入的操作。
drop database if exists school;
create database school;
use school;
create table teacher
(
id int(3) auto_increment not null primary key,
name char(10) not null,
address varchar(50) default 'BeiJing',
year date
);
insert into teachervalues('001','Tom','ChengDu','1976-10-10');
insert into teachervalues('002','Bob','ShengZH','1975-12-23');
NetBeansà驅動à訪問MySQL
1. 下載資料庫驅動程式:mysql-connector-java-5.0.8,並將此目錄下的檔案mysql-connector-java-5.0.8-bin.jar放到%JAVA_HOME%\lib下.
注意:如果不在放到這裡的話,則需要將檔案所在目錄加到classpath中。
2. 開啟NetBeans
所在項目的Libraries 右鍵Add JAR/Folder 選中剛才的jar檔案。
3. 開啟NetBeans: Window-->Services-->Database
在MySQL Server at localhost:3306[root]上右鍵Properties上作如下配置:
注意:
1. 在Path/URL to admin Tool: 這一項中填上MySQL的管理工具,這裡用的是Navicat V8.2.12ForMySQL,所以這裡填上該工具可執行檔的具體目錄即可,其他選項會預設產生。
2. Server HostName:
如果是本地的話就填:localhost 或 127.0.1
如果是遠端話就填:MySQL資料庫伺服器所在IP。
下面NetBeans裡面的完整例子來連MySQL,並對其進行操作:
import java.sql.Connection; //Connection類
import java.sql.DriverManager; //驅動類
import java.sql.ResultSet; //查詢到的SQL結果集類
import java.sql.Statement; //SQL語句類
public class MySQLTest {
public static void main(String arg[]) {
try {
Connection con = null; //定義一個MYSQL連結化物件
Class.forName("com.mysql.jdbc.Driver").newInstance();
//MySQL驅動
con =DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/school","root", "abcd"); //school是資料庫名,abcd是root帳號的密碼。
Statement stmt; //建立聲明
stmt = con.createStatement(); //新增一條資料
stmt.executeUpdate("INSERTINTO user (username, password) VALUES ('qgao', '123456')");
ResultSet res =stmt.executeQuery("select LAST_INSERT_ID()");
int ret_id;
if (res.next()) {
ret_id = res.getInt(1);
System.out.print(ret_id);
}
//刪除一條資料
String sql = "DELETE FROMuser WHERE username='Li Si'";
long deleteRes =stmt.executeUpdate(sql);
//如果為0則沒有進行刪除操作,如果大於0,則記錄刪除的條數
System.out.print("DELETE:" + deleteRes);
//更新一條資料
String updateSql = "UPDATEuser SET password = '1234' WHERE username='Gao Shou'";
long updateRes =stmt.executeUpdate(updateSql);
System.out.print("UPDATE:" + updateRes);
//查詢資料並輸出
String selectSql = "SELECT *FROM user";
ResultSet selectRes =stmt.executeQuery(selectSql);
while (selectRes.next()) { //迴圈輸出結果集
String username =selectRes.getString("username");
String password =selectRes.getString("password");
System.out.print("\r\n\r\n");
System.out.print("username:" + username +"password:" + password);
}
} catch (Exception e) {
System.out.print("MYSQLERROR:" + e.getMessage());
}
}
}