程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> MySQL安裝、配置、使用及JDBC鏈接

MySQL安裝、配置、使用及JDBC鏈接

編輯:關於MYSQL數據庫

       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

      例如: 拿下面的命令放在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("rnrn");

      System.out.print("username:" + username +"password:" + password);

      }

      } catch (Exception e) {

      System.out.print("MYSQLERROR:" + e.getMessage());

      }

      }

      }

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved