平时管理mysql喜欢用可视化的phpmyadmin,方便易用,简单的事情就不要复杂化。今天在做项目的过程中,发现需要远程连接mysql数据库,虽然说phpmyadmin是可以连接远程的数据库的,但是需要远程的数据库对我这边开启一定的访问权限。
鉴于安全考虑,打消了这个念头。
而想想,自己无非就是想去看看表的结构,select几个字段罢了,那就直接登录直接使用吧,遂把今天的一些操作记录一下吧。
linux下使用mysql
安装就不说了,直接进入主题。
先登录,命令如下:其中,-u
后面直接输入用户名,-p
后面直接输入密码
mysql -uusername -ppassword
无意外,登录成功。
在这里记录一个坑,那就是登录成功之后,进入mysql的命令行模式,此后输入命令都要以分号;
结尾,就和我们日常编程一样,否则输入命令之后,会没有任何错误提示,并且也不会有任何反应。
首先看看有哪些数据库:
show databases;
选择一个数据库,比如我想对数据库名为test的数据库进行操作。
use test;
之后,就是输入各种select语句就行了。最后退出的时候输入命令exit
就行。
Java下mysql的使用
首先下载mysql的jdbc驱动,去搜索mysql-connector-java,然后下载。
我搜索到的下载地址:http://dev.mysql.com/downloads/connector/j/
然后新建一个工程,把下载的jar包引进去就行。
随后开始编程,使用很简单,我写了一个简单的example记录一下,操作都大同小异,不过我这里用的不是存储过程,而是基本的sql语句操作。附上代码:
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class mysqlExample { public static void main(String args[]) { try { Class.forName("com.mysql.jdbc.Driver"); // 加载MYSQL JDBC驱动程序 System.out.println("加载驱动成功!"); } catch (Exception e) { System.out.print("加载驱动失败!"); e.printStackTrace(); } try { Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/dbName", "root", ""); System.out.println("连接到数据库成功"); String sql = "select * from `user`;"; ResultSet rs = getResult(sql,connection); //遍历结果,rs是结果游标 while(rs.next()) { /* * getString方法可以传int index,即第几列(1代表结果的第一列..) * 也可以传String columnname,可以直接指定要哪个字段 */ System.out.println(rs.getString(1)); System.out.println(rs.getString("admin")); } //关闭连接 connection.close(); } catch (Exception e) { e.printStackTrace(); } } /** * 获取sql查询结果 * @param sql sql语句 * @param connection 连接 * @return 结果集 * @throws SQLException */ public static ResultSet getResult(String sql,Connection connection) throws SQLException{ Statement stmt = connection.createStatement(); ResultSet rs = stmt.executeQuery(sql); return rs; } }