conexão mysql via jdbc

Pessoal, uma dúvida.
Estou aprendendo a usar o mysql, já criei um database de nome “mydb”, dei os privlégios necessários a um usuário, dei o comando “use mydb”, criei uma tabela “agenda” e depois saí do console.
até aí tudo ok.
Percebi que foi criado um diretório chamado “mydb” contendo a tabela.
Resumindo:
o banco está em c:\mydb

duvida? como referencio este database na linha do driver JDBC conector/J?

é assim?
jdbc:mysql://localhost:3306/mydb
ou
assim?
jdbc:mysql://localhost:3306/c:\mydb

ou devo copiar a pasta “mydb” para o classpath do programa?
O servidor tem que estar ativo? Realmente eu não sei
Agradeço a todos

até então não consegui conectar.
quando uso tabelas de access via odbc fica fácil, mas outro banco tá dificil

agradeço a todos

esqueci de colocar na linha o usuário e o password, na realidade eles foram colocados apesar de eu não ter citado.

Sim, o MySql tem que estar rodando.

E você precisa baixar o .jar com o driver do MySql e colocá-lo no seu classpath. Então vá no tutorial de introdução ao jdbc e seja feliz.

Não pense em arquivos como no caso do Acess, mas sim em termos de servidor de banco de dados.

quanto aos jars. já os referenciei no classpath
quanto o servidor mysql estar ativo, viajei? como faço isso?
quando eu instalei os servidor a unica opção interativa é o console. como faço pra deixar o servidor ativo

já baixei o conector/J sem problemas e já referenciei os .jars no claspath
isso foi fácil. eu também já tenho experiência com o jdbc, porem nunca trabalhei com um database server. por isso a dificuldade

Se você estiver utilizando o windows, tem como deixá-lo como um serviço, na hora da instalação, assim você pode pará-lo e iniciá-lo pelas ferramentas administrativas.
Ou pelo prompt de comando, entre em mysql\bin digite ‘mysqld’ para iniciar, e ‘mysql’ para conectar-se ao monitor, nele você pode executar os selects e etc.

Para mais informações, dá uma olhada na documentação no site do mysql(http://www.mysql.org) tem bastante coisa lá.

OK vou tentar obrigado

e quanto aquela questão

é assim?
jdbc:mysql://localhost:3306/mydb
ou
assim?
jdbc:mysql://localhost:3306/c:\mydb

Alex voce conseguiu fazer a conexão, estou com dúvida nesta parte tambem.

jdbc:mysql://localhost:3306/upis

Na instalação do mysql não consegui configurar o usuario e senha, deu erro no Start service, mas to usando pelo prompt como Rafael mostrou.

Como chamo a conexão???

http://www.guj.com.br/java.artigo.7.1.guj

O problema e que não estou conseguindo criar o usuario e senha, tem como acessar sem isso??11

Alguem aqui nao leu a documentacao do MySQL… :wink:

http://dev.mysql.com/doc/

Não funciona com root como login e a senha vazia?

Não fincionou !!


Conn = DriverManager.getConnection(“jdbc:mysql://localhost:3306/upis?user=root”);

Não fincionou !!


Conn = DriverManager.getConnection(“jdbc:mysql://localhost:3306/upis?user=root”);

Qual erro dah? Qdo vc usa um frontend pro banco tipo MysqlFront, vc consegue conectar?

Por que não conectam com o MySql desta forma:

com.mysql.jdbc.jdbc2.optional.MysqlDataSource MySql = new com.mysql.jdbc.jdbc2.optional.MysqlDataSource();
MySql.setServerName("127.0.0.1");
MySql.setPort(3306);
MySql.setDatabaseName("database");
MySql.setUser("root");
MySql.setPassword("");
 
Connection con = MySql.getConnection();
Statement stat = con.createStatement();
ResultSet rs   = stat.executeQuery("select * from table");

Assim não é preciso ficar usando o Class.forName(“org.gjt.mm.mysql.Driver”).newInstance(); …

O ideal é fazer uma class com um método que retorne apenas a Connection, exemplo:

import java.sql.*;
class public DB {
  public static Connection getConnection() {
    com.mysql.jdbc.jdbc2.optional.MysqlDataSource MySql = new com.mysql.jdbc.jdbc2.optional.MysqlDataSource();
    MySql.setServerName("127.0.0.1");
    MySql.setPort(3306);
    MySql.setDatabaseName("database");
    MySql.setUser("root");
    MySql.setPassword("");
    return MySql.getConnection();
  }
}

Depois basta fazer assim:

Statement stat = DB.getConnection().createStatement();
ResultSet rs   = stat.executeQuery("select * from table");

Não é mais simples? :?

para criar o usuário vc tem que dar um grant all no console do root

grant all on nomedodatabase.* to ‘user’@‘127.0.0.1’ identified by ‘senha’

cuidado não bote o nome da tabela e sim do databse

tendo criado continue lá com o JDBC