« | August 2025 | » | 日 | 一 | 二 | 三 | 四 | 五 | 六 | | | | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | | | | | | | |
| 公告 |
暂无公告... |
Blog信息 |
blog名称:小白兔的家 日志总数:12 评论数量:86 留言数量:0 访问次数:157703 建立时间:2006年3月25日 |

| |
[JAVA]MySQL数据库 与JAVA 软件技术
小鱼儿 发表于 2006/3/25 23:09:56 |
一,MySQL服务的启动与关闭
(1)查看并启动MySQL服务。
在Windows XP下安装完MySQL后,它就已经自动启动服务了,并且在开始菜单中有其客户端的快捷方式连接,见图1。
500)this.width=500'>
图1
可以通过Windows的服务管理器查看。“开始”-“运行”,输入“services.msc”,回车。弹出Windows的服务管理器,然后就可以看见服务名为“mysql”的服务项了,其右边标明“已启动”,见图2
500)this.width=500'>
图2
如果没有“已启动”字样,说明MySQL服务未启动,不能连接,会出现10061错误。启动方法为:“开始”-“运行”,输入“cmd”,回车弹出XP命令提示符界面(类似DOS命令行,以后简称命令行)。然后输入“net start mysql”就启动mysql服务了,停止mysql服务“net stop mysql”(注意,这里是输入的MySQL服务的名字。如果你的MySQL服务的名字是DB或其它名字,你应该输入“net start DB”或其它名),见图3。
500)this.width=500'>
图3
(2)连接MySQL服务器。
现在开始连接MySQL服务器,连接MySQL的命令格式为:
mysql –h 主机名 –u 用户名 –p 用户密码
在命令行进入MySQL的目录,见图4。
500)this.width=500'>
图4
由于我在开始时没有设置密码,所以直接按回车就可以了。如果出现:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1 to server version: 4.1.11-nt
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>
这就说明连接MySQL成功,“mysql>”说明已经成功联入MySQL服务器了,可以开始msql的操作了。
“-h 主机名”还可以这样写:“-h主机名”(中间不要空格)、“--host=主机名”
“-u 用户名”还可以写成:“-u 用户名”、“--user=用户名”
“-p 用户密码”还可以写出:“--password=用户密码”。但是,出于安全的考虑,最好不要这样做。选择-p 不跟口令告诉mysql在启动时提示您键入口令。例如:
mysql>mysql -hlocalhost –u root -p
二 安装MySQL-Front(可选 Mysql-front下载地址:http://www.mysqlfront.de/)
MySQL-Front,MySQL的企业管理器 。如果对phpMyAdmin更换不同的服务器就要去修改config.inc.php感到厌倦,并且想得到调试SQL时更好的用户体验的话,可以试试这个工具——MySQL-Front(全功能试用30天,之后只能使用部分功能。也可以去下1.0,完全是免费的版本。)。
注意,只有先启动了MySQL后才能依靠MySQL-Front登录到MySQL服务器上。不能依靠MySQL-Front启动MySQL服务器。
登录界面如图5
500)this.width=500'>
图5
登录后界面,见图6500)this.width=500'>
图6
三 JAVA连接MySQL
所需插件mysql-connector-java-3.1.5-gamma-bin.jar
下载地址http://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-3.1.5-gamma.zip/from/http://mirrors.hpcf.upr.edu/mysql/
注:在用这个插件前我用mm.mysql-2.0.4-bin.jar作为与MySQL连接的数据库插件,可是在调适下面示例代码时出现:Communication failure during handshake. Is there a server running on localhost:3306?错误。故如果用mm.mysql-2.0.4-bin.jar出现如上问题,请换成插件mysql-connector-java-3.1.5-gamma-bin.jar试一下
另外如果在使用数据库了时出现以下错误:ERROR: database: mysql_error: Client does not support authentication protocol request by server; consider upgrading MySQL client Fatal Error, Quitting..
按如下方法解决:
解决方法如下:
(摘自http://sourceforge.net/mailarchive/forum.php?thread_id=7899059&forum_id=7142)This error is generated because snort is compiled with old MySQL libraries that doesn"t support the new MySQL 4.1 password encryption. To resolve this issue, you have to enter the following: mysql> SET PASSWORD FOR -> "some_user"@"some_host" = OLD_PASSWORD("newpwd"); Alternatively, use UPDATE and FLUSH PRIVILEGES: mysql> UPDATE mysql.user SET Password = OLD_PASSWORD("newpwd") -> WHERE Host = "some_host" AND User = "some_user"; mysql> FLUSH PRIVILEGES;
JAVA连接MySQL示例代码
package com.ideas.util;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class sql_data {
String sDBDriver = "com.mysql.jdbc.Driver";//如果用mm.mysql-2.0.4-bin.jar,改为:String sDBDriver = " org.gjt.mm.mysql.Driver";
String url =
"jdbc:mysql://localhost:3306/book"; //book要换成读者要连接的数据库
//pubs为你的数据库的
String user = "root"; //MySQL用户名
String password = "111111"; //MySQL密码,以读者的密码为准
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
public sql_data() {
try {
Class.forName(sDBDriver).newInstance();
} catch (java.lang.ClassNotFoundException e) {
System.err.println("sql_data(): " + e.getMessage());
}
catch (java.lang.Exception e) {
System.err.println("sql_data(): " + e.getMessage());
}
}
public ResultSet executeQuery(String sql) {
try {
conn = DriverManager.getConnection(url, user, password);
stmt =
conn.createStatement(
ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_READ_ONLY);
rs = stmt.executeQuery(sql);
} catch (SQLException ex) {
System.err.println("sql_data.executeQuery:" + ex.getMessage());
}
return rs;
}
public void closeConn() {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
public static void main(String []args)
{
String title;
sql_data sqlbean = new sql_data();
阅读全文(2546) | 回复(-1) | 编辑 | 精华 |
| | |
|