2016-04-07 19 views
-1

kullanılarak, mysql veritabanı oluşturulamazkod Yani burada jdbc sürücüsü

Connecting to database... 
Creating database... 
Connection: [email protected] 
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Access denied for user ''@'localhost' to database 'STUDENTS' 
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) 
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 
    at java.lang.reflect.Constructor.newInstance(Constructor.java:408) 
    at com.mysql.jdbc.Util.handleNewInstance(Util.java:404) 
    at com.mysql.jdbc.Util.getInstance(Util.java:387) 
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:939) 
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3878) 
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3814) 
    at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2478) 
    at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2625) 
    at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2547) 
    at com.mysql.jdbc.StatementImpl.executeUpdateInternal(StatementImpl.java:1541) 
    at com.mysql.jdbc.StatementImpl.executeLargeUpdate(StatementImpl.java:2605) 
    at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1469) 
    at com.install.main.Executor.main(Executor.java:34) 
Goodbye! 

sizin kimsenin ona bağlanmaya çalıştığında neden biliyor mu veritabanı oluşturdum ve neden veritabanı oluşturmuyor? Mysql için herhangi bir şifre belirlemedim.

Ben yürütmek durumunda thisstatement:

GRANT ALL PRIVILEGES ON . TO 'eli'@'localhost' IDENTIFIED BY 'eli' WITH GRANT OPTION; MySQL Wrokbench içinde

, ben de söyleyerek, aynı hatayı alıyorum:

05:43:15 GRANT ALL PRIVILEGES ON . TO 'eli'@'localhost' IDENTIFIED BY 'eli' WITH GRANT OPTION Error Code: 1045. 

benim konsolunda MySQL komutu yazarsanız düsünmek - herhangi bir kullanıcı adı veya parola vermeden [email protected] olarak oturum açar ... Ubuntu'dayım - bu bilgisayardaki kullanıcı adımı belirtir ancak hata hala var - ve hiçbir şey yapamam. Komut satırında bu mysql> select * from information_schema.user_privileges; yaparsanız

:

bu görebildiğim budur:

+---------------+ | user() | +---------------+ | [email protected] | +---------------+ 1 row in set (0.00 sec)

:

+----------------+---------------+----------------+--------------+ | GRANTEE | TABLE_CATALOG | PRIVILEGE_TYPE | IS_GRANTABLE | +----------------+---------------+----------------+--------------+ | ''@'localhost' | def | USAGE | NO | +----------------+---------------+----------------+--------------+ 1 row in set (0.00 sec)

... Ama bu select user(); yaparsam

sudo dpkg-reconfigure mysql-server-5.5 kullanmayı denedim, ancak hiçbir zaman yeni şifre - sunucumu yeniden başlattım, hepsi bu.

Üzgünüz, ama burada neler oluyor?

+2

'user' '@' localhost'', 'USER', düşündüğünüz değeri ("el") tutmuyor gibi görünüyor. –

+0

@TylerSebastian Hayır, daha büyük olasılıkla '' eli '@' localhost'' yapar MySQL sunucusunda bulunmamakta, bu yüzden '' @ '' localhost'' (local_inter [at] localhost) olarak oturum açmaktadır. –

+0

Bu tabloyu yürütürsem: "TÜM PRIVILEGELER ÜZERİNDE *. * '' Yerel '' TANITIMI ile 'eli' TARAFINDAN BELİRTİLEN '' localhost ''; MySQL Wrokbench'de de aynı hatayı alıyorum: "05:43:15 \t GRANT TÜM PRIVILEGES ON *. * '' Yerel '' 'ELANT'IN TANITIMI \t İLE BELİRTİLEN' localhost 'TANIMI Hata Kodu: 1045. Erişim '' @ 'localhost' kullanıcısı için reddedildi ' – user3253253

cevap

0

Senin sorunun açıkça Sen veritabanı için kullanıcı ilan ettiler

Access denied for user ''@'localhost' to database 'STUDENTS' 

bu çıktıda tanımlanır 'Eli'

static final String USER = "eli"; 

ama çıktıda kullanıcı bunun için ayarlanmamış görebilirsiniz veritabanı ve doğrudan görebilmemin bir nedeni, aslında veritabanınıza hiç işaret etmemenizdir. MySQL ''@'localhost' (any_user olarak localhost [at] sizden oturum yani senin olmalı Ne

, sen konak localhost ('eli'@'localhost') için eli adlı bir kullanıcı oluşturduk değil gibi görünüyor

static final String DB_URL = "jdbc:mysql://localhost/STUDENTS"; 
+0

Bu tabloyu çalıştırıyorsam: 'TÜM PRIVILEGE'LERİ AÇIKLAYIN. 'Eli' @ 'local', 'ELİF İLE İZLEYEN' 'ELİF OPSİYONU İLE;' , MySQL Wrokbench'de de aynı hatayı alıyorum: '05:43:15 GRANT ALL PRIVILEGES ON. TO 'eli' @ 'localhost' TANITIM İLE 'eli' IDENTIFIED İLE SEÇENEK Hata Kodu: 1045. ' – user3253253

+0

Eğer konsolumda mysql komutu yazıyorsam, kullanıcı adı vermeden beni" eli @ localhost "olarak girer. şifre ... Ubuntu'dayım - bu bilgisayardaki kullanıcı adımı ifade eder. – user3253253

+0

'sudo dpkg-reconfigure mysql-server-5.5' kullanmayı denedim, ancak yeni bir parola girmemi hiç istemedim - sunucumu yeniden başlattım, hepsi bu. – user3253253

0

olduğunu) ve bu kullanıcının MySQL sunucusunda CREATE ayrıcalıkları yoktur.

Yani, 'eli'@'localhost' (değil'eli'@'%') için MySQL bir kullanıcı oluşturmak ve bu kullanıcı ayrıcalıkları CREATE vermek.

+0

Eğer y konsolunda mysql komut yazıyorsam, kullanıcı adı veya parola vermeden beni "eli @ localhost" olarak kaydeder ... Ubuntu'dayım - bu bilgisayardaki kullanıcı adımı belirtir ancak hata hala var - ve hiçbir şey yapamam. – user3253253

+0

'sudo dpkg-reconfigure mysql-server-5.5' kullanmayı denedim, ancak yeni bir şifre girmemi hiç istemedim - sunucumu yeniden başlattım, hepsi bu. – user3253253

İlgili konular