उपयोगकर्ता 'रूट' @ 'लोकलहोस्ट' (पासवर्ड का उपयोग करके: वाईईएस) के लिए प्रवेश निषेध - कोई विशेषाधिकार नहीं?


110

मुझे लगातार यह त्रुटि प्राप्त हो रही है।

मैं mySQL वर्कबेंच का उपयोग कर रहा हूं और मुझे जो भी मिल रहा है, वह यह है कि रूट के स्कीमा विशेषाधिकारों के शून्य हैं। कोई विशेषाधिकार नहीं हैं।

मुझे उन प्लेटफार्मों पर परेशानी हो रही है जिनका उपयोग मेरे सर्वर के लिए किया गया है और यह अचानक समस्या है।

root@127.0.0.1 की जाहिर तौर पर बहुत पहुंच है लेकिन मैं इसमें लॉग इन हूं, लेकिन यह सिर्फ लोकलहोस्ट के लिए असाइन करता है - लोकलहोस्ट के पास कोई विशेषाधिकार नहीं है।

मैंने कुछ चीजें की हैं जैसे FLUSH HOSTS, FLUSH PRIVILEGESआदि, लेकिन उस या इंटरनेट से कोई सफलता नहीं मिली है।

मैं इसकी पहुंच कैसे वापस पा सकता हूं? मुझे यह निराशा होती है क्योंकि जब मैं चारों ओर देखता हूं तो लोग आपसे "पहुंच" की उम्मीद करते हैं लेकिन मेरे पास पहुंच नहीं है इसलिए मैं कमांड लाइन या कुछ भी और GRANTअपने आप में कुछ भी नहीं कर सकता।

जब SHOW GRANTS FOR rootयह चल रहा है तो बदले में मुझे क्या मिलेगा:

त्रुटि कोड: 1141. मेजबान '%' पर उपयोगकर्ता 'रूट' के लिए ऐसा कोई अनुदान परिभाषित नहीं है


SHOW GRANTS FOR rootक्वेरी में चलाएं , अपने प्रश्न में परिणाम पोस्ट करें।
नोबल उत्थान

आप डेटाबेस से स्थानीय होस्ट या किसी अन्य होस्ट से MySQL वर्कबेंच का उपयोग करने की कोशिश कर रहे हैं?
एंडी जोन्स

सर्वर को फिर से शुरू करें --स्काइप-ग्रांट-टेबल और किसी भी उपयोगकर्ता के साथ लॉगिन करें और रूट के लिए पूर्ण विशेषाधिकार प्रदान करें और फिर से उपरोक्त विकल्प के बिना सर्वर को पुनः आरंभ करें
vidyadhar

@AndyJones नहीं, यह मेरे द्वारा उपयोग किए जा रहे एक समर्पित सर्वर पर है।
चेस

@vidyadhar मुझे क्षमा करें, मुझे यकीन नहीं है कि मैं ऐसा कहाँ करूँगा?
पीछा करें

जवाबों:


51

रूट पासवर्ड रीसेट करने के लिए निर्देशों का उपयोग करें - लेकिन रूट पासवर्ड रीसेट करने के बजाय, हम बलपूर्वक INSERT को mysql.user तालिका में रिकॉर्ड करने जा रहे हैं।

Init फ़ाइल में, इसके बजाय इसका उपयोग करें

INSERT INTO mysql.user (Host, User, Password) VALUES ('%', 'root', password('YOURPASSWORD'));
GRANT ALL ON *.* TO 'root'@'%' WITH GRANT OPTION;

1
मुझे खेद है कि एंडी, लेकिन जब मुझे चरण 6 मिलता है तो मैं एक समस्या में भागता रहता हूं। चूंकि मैंने एक इंस्टॉलेशन विज़ार्ड का उपयोग किया था, इसलिए मैं वह "C:\Program Files\MySQL\MySQL Server 5.6\bin\mysqld.exe" --defaults-file="C:\\Program Files\\MySQL\\MySQL Server 5.6\\my.ini" --init-file=C:\\mysql-init.txt सब कुछ उपयोग कर रहा हूं, जहां यह माना जाता है कि आपके पास ऊपर क्या है और मैंने उसके अनुसार फ़ाइल में डाल दिया है। मेरे पास सेवा भी बंद है। मुझे बस यह आउटपुट मिलता है: prntscr.com/1ilxau और सब कुछ (प्लगइन्स) बंद। वास्तव में भ्रमित।
पीछा करते हैं

2
क्या आप इसे एक व्यवस्थापक के रूप में चला रहे हैं?
एंडी जोन्स

1
मेरी मूर्खता पर आश्चर्य हुआ, मैं नहीं था। मेरे होने के बाद, मुझे यह prntscr.com/1imcnj मिला - पहली बार मैंने इसे अपनी पंक्तियों (पेस्ट से) पर किया था, फिर मैंने इसे एक पंक्ति में रखा। मुझे खेद है कि यह मेरे लिए इतना भ्रामक है, प्रति वर्गमीटर विशेषज्ञ नहीं।
चेस

16
यह दे: ERROR 1054 (42S22): Unknown column 'Password' in 'field list'त्रुटि। @AndyJones
alper

1
मुझे 'फ़ील्ड सूची' में अज्ञात कॉलम 'पासवर्ड' मिल रहा है
sricheta ruj

130

अगर आपको MySql 5.7 में यही समस्या है। +:

Access denied for user 'root'@'localhost'

यह इसलिए है क्योंकि MySql 5.7 डिफ़ॉल्ट रूप से सॉकेट से जुड़ने की अनुमति देता है, जिसका अर्थ है कि आप बस से कनेक्ट करते हैं sudo mysql। यदि आप sql चलाते हैं:

SELECT user,authentication_string,plugin,host FROM mysql.user;

तो आप इसे देखेंगे:

+------------------+-------------------------------------------+-----------------------+-----------+
| user             | authentication_string                     | plugin                | host      |
+------------------+-------------------------------------------+-----------------------+-----------+
| root             |                                           | auth_socket           | localhost |
| mysql.session    | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| mysql.sys        | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| debian-sys-maint | *497C3D7B50479A812B89CD12EC3EDA6C0CB686F0 | mysql_native_password | localhost |
+------------------+-------------------------------------------+-----------------------+-----------+
4 rows in set (0.00 sec)

रूट और पासवर्ड के साथ कनेक्शन की अनुमति देने के लिए, फिर कमांड के साथ तालिका में मूल्यों को अपडेट करें:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Current-Root-Password';
FLUSH PRIVILEGES;

फिर सेलेक्ट कमांड को फिर से रन करें और आप देखेंगे कि यह बदल गया है:

+------------------+-------------------------------------------+-----------------------+-----------+
| user             | authentication_string                     | plugin                | host      |
+------------------+-------------------------------------------+-----------------------+-----------+
| root             | *2F2377C1BC54BE827DC8A4EE051CBD57490FB8C6 | mysql_native_password | localhost |
| mysql.session    | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| mysql.sys        | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| debian-sys-maint | *497C3D7B50479A812B89CD12EC3EDA6C0CB686F0 | mysql_native_password | localhost |
+------------------+-------------------------------------------+-----------------------+-----------+
4 rows in set (0.00 sec)

और बस। sudo mysql_secure_installationकमांड को चलाने और पूरा करने के बाद आप इस प्रक्रिया को चला सकते हैं ।

मारीदब के लिए, का उपयोग करें

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('manager');

पासवर्ड सेट करने के लिए। Https://mariadb.com/kb/en/set-password/ पर अधिक


1
वास्तव में धन्यवाद, जबकि कनेक्शन लिनक्स टकसाल में स्थापना
लोवा चित्तमुरी

मेरी समस्या auth_socketको mysql_native_passwordठीक करने से अद्यतन करना । धन्यवाद!
18:30 बजे ओलोर

1
यह पूरी तरह से पता लगाने की कोशिश कर रहा था और समय की एक विशाल बर्बादी की कोशिश कर रहा था। काश वे इस दौरान पूछते mysql_secure_installation। इस उत्तर के लिए बहुत बहुत धन्यवाद।
पैपिटर

यह भी उपयोगी stackoverflow.com/questions/2995054/…
Abeer Sul

42

यह मेरे उपयोगकर्ता के विशेषाधिकार को पसंद नहीं करता था इसलिए मैंने इसे SUDO किया। (bash << sudo सेट यूजर एंड पासवर्ड) (यह रूट का उपयोगकर्ता नाम देता है और पासवर्ड को कुछ भी सेट नहीं करता है) (Mac पर)

sudo mysql -uroot -p

27

निम्न आदेशों का प्रयास करें

~$ sudo /etc/init.d/mysql stop
~$ sudo mysqld_safe --skip-grant-tables &
~$ mysql -u root
Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 1 to server version: 4.1.15-Debian_1-log

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>

mysql> use mysql;

mysql> update user set password=PASSWORD("root") where User='root';

mysql> flush privileges;

mysql> quit

~$ sudo /etc/init.d/mysql stop

Stopping MySQL database server: mysqld

STOPPING server from pid file /var/run/mysqld/mysqld.pid

mysqld_safe[6186]: ended

[1]+  Done                    mysqld_safe --skip-grant-tables

~$ sudo /etc/init.d/mysql start

~$ mysql -u root -p

* MySQL Community Server 5.6.35 is started
~$ mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.6.35 MySQL Community Server (GPL)

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

11
MySQL 5.7 में, mysql.user तालिका फ़ील्ड में पासवर्ड फ़ील्ड को हटा दिया गया था, अब फ़ील्ड का नाम 'प्रमाणीकरण_स्ट्रिंग' है।
रुमिड

mysql के नए संस्करण के लिए उन्होंने प्रमाणीकरण_स्ट्रीमिंग के रूप में पासवर्ड कॉलम का नाम बदल दिया
रमेश महाजन

sudo mysqld_safeमुझे यह मिल गया /var/run/mysqld for UNIX socket file don't exists, फिर इसके बाद mkdir -p /var/run/mysqldऔर sudo chown -R mysql:mysql /var/run/mysqld/इसने काम किया और डेमन शुरू किया।
kenzotenma

1
ERROR 2002 (HY000): सॉकेट '/var/run/mysqld/mysqld.so
Mostafa

19

उन लोगों के लिए जो mysql 5.7+ संस्करण में नीचे त्रुटि का सामना कर रहे हैं -

Access denied for user 'root'@'localhost' (using password: YES)
  1. नया टर्मिनल खोलें

  2. sudo /etc/init.d/mysql stop ... MySQL सामुदायिक सर्वर 5.7.8-आरसी को रोक दिया गया है

  3. sudo mysqld_safe --skip-grant-tables & यह सभी अनुदान स्तर के विशेषाधिकारों को छोड़ देगा और सुरक्षित मोड में mysql शुरू करेगा। कभी-कभी प्रक्रिया सिर्फ इस वजह से अटक जाती है

grep: एरर लिखें: टूटा हुआ पाइप 180102 11:32:28 mysqld_safe '/var/log/mysql/error.log' में लॉग इन करना।

प्रक्रिया को बाधित और बाहर करने के लिए बस Ctrl + Z या Ctrl + C दबाएं

  1. mysql -u root

माईएसक्यूएल मॉनिटर मे आपका स्वागत है। साथ समाप्त होता है; या \ g। आपका MySQL कनेक्शन आईडी 2 सर्वर संस्करण है: 5.7.8-आरसी MySQL सामुदायिक सर्वर (GPL)

कॉपीराइट (c) 2000, 2015, Oracle और / या इसके सहयोगी। सभी अधिकार सुरक्षित।

ओरेकल ओरेकल कॉर्पोरेशन और / या इसके सहयोगियों का एक पंजीकृत ट्रेडमार्क है। अन्य नाम उनके अपने स्वामियों के ट्रेडमार्क हो सकते हैं।

'सहायता' टाइप करें या मदद के लिए '\ h'। वर्तमान इनपुट स्टेटमेंट को साफ़ करने के लिए 'c' टाइप करें।

  1. mysql> use mysql;

तालिका और स्तंभ नामों को पूरा करने के लिए तालिका जानकारी पढ़ना। आप इस सुविधा को बंद कर सकते हैं -ए के साथ एक तेज स्टार्टअप प्राप्त करने के लिए

डेटाबेस बदल गया

  1. mysql> update user set authentication_string=password('password') where user='root'; क्वेरी ठीक है, 4 पंक्तियाँ प्रभावित, 1 चेतावनी (0.03 सेकंड) पंक्तियाँ मेल खाती हैं: 4 परिवर्तित: 4 वार: 1

  2. mysql> flush privileges; क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.00 सेकंड)

  3. mysql> quit अलविदा

  4. sudo /etc/init.d/mysql stop

..180102 11:37:12 पीआईडी ​​फ़ाइल /var/run/mysqld/mysqld.pid से mysqld_safe mysqld समाप्त हुआ। * MySQL सामुदायिक सर्वर 5.7.8-आरसी को रोका जाता है arif @ ubuntu: ~ $ sudo /etc/init.d/mysql start .. * MySQL समुदाय सर्वर 5.7.8-rc प्रारंभ किया गया है

  1. mysql -u root -p

    पास वर्ड दर्ज करें:

    माईएसक्यूएल मॉनिटर मे आपका स्वागत है। साथ समाप्त होता है; या \ g। आपका MySQL कनेक्शन आईडी 2 सर्वर संस्करण है: 5.7.8-आरसी MySQL सामुदायिक सर्वर (GPL)

mysql 5.7+ संस्करण के बाद mysql.user तालिका से नाम प्रमाणीकरण_string द्वारा प्रतिस्थापित कॉलम पासवर्ड।

आशा है कि ये कदम किसी की मदद करेंगे, धन्यवाद।


15

मैं ubuntu 18 का उपयोग कर रहा था और बस निम्नलिखित आदेशों के साथ MySQL (पासवर्ड: रूट) स्थापित किया था।

sudo apt install mysql-server
sudo mysql_secure_installation

जब मैंने सामान्य ubuntu उपयोगकर्ता के साथ लॉग इन करने की कोशिश की तो यह मुझे इस मुद्दे को फेंक रहा था।

ERROR 1698 (28000): Access denied for user 'root'@'localhost'

लेकिन मैं सुपर उपयोगकर्ता के माध्यम से MySQL में प्रवेश करने में सक्षम था। निम्नलिखित आदेशों का उपयोग करके मैं एक सामान्य उपयोगकर्ता के माध्यम से लॉग इन करने में सक्षम था।

sudo mysql    
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
exit;

फिर आपको सामान्य खाते के साथ मैसकल में प्रवेश करने में सक्षम होना चाहिए।

यहां छवि विवरण दर्ज करें


8

लिनक्स सिस्टम पर रूट पासवर्ड रीसेट करने का एक सरल तरीका:

sudo dpkg-reconfigure mysql-server-5.5

पहुँच से वंचित कुछ अन्य कारणों की जाँच करें:

https://dev.mysql.com/doc/refman/5.7/en/problems-connecting.html


1
अपने संस्करण को "mysql-server का पता लगाएं" के साथ खोजें, और उसके अनुसार कमांड चलाएं
Punnerud

5

यदि आपको यह त्रुटि कार्यक्षेत्र में मिल रही है, लेकिन आप टर्मिनल से लॉग इन करने में सक्षम हैं तो इस चरणों का पालन करें।

सबसे पहले अपने वर्तमान पासवर्ड के साथ लॉग इन करें:

sudo mysql -u root -p

फिर अपना पासवर्ड बदलें क्योंकि कम ताकत वाला पासवर्ड कभी-कभी त्रुटि देता है।

ALTER USER 'root'@'localhost' IDENTIFIED BY 'new-strong-password';

FLUSH PRIVILEGES;

फिर बस बाहर निकलें और अपने नए पासवर्ड के साथ फिर से लॉगिन करें:

quit

sudo mysql -u root -p

एक बार जब आप सफलतापूर्वक कमांड टाइप कर लेते हैं:

use mysql;

इसे 'डेटाबेस बदला हुआ' जैसा संदेश दिखाना चाहिए फिर टाइप करें:

UPDATE user SET plugin='mysql_native_password' WHERE User='root';

उसके बाद टाइप करें:

UPDATE mysql.user set authentication_string=PASSWORD('new-strong-password') where user='root';

फिर टाइप करें:

FLUSH PRIVILEGES;

फिर बस बाहर निकलें:

quit

अब अपने WORKBENCH में अपने नए पासवर्ड के साथ लॉग इन करने का प्रयास करें। आशा है कि यह काम करेगा। धन्यवाद।


4

उबंटू सर्वर पर टेस्टलिंक स्थापित करते समय मुझे इस समस्या का सामना करना पड़ा, मैंने इन चरणों का पालन किया

mysql -u root
use mysql;
update user set password=PASSWORD("root") where User='root';
flush privileges;
quit

अब उदाहरण बंद करें और फिर से शुरू करें

sudo /etc/init.d/mysql stop
sudo /etc/init.d/mysql start

2

रूट पासवर्ड रीसेट करने का सबसे आसान तरीका है:

  • mysqld को फिर से शुरू करें --स्किप-अनुदान-टेबल विकल्प । यह किसी को भी पासवर्ड के बिना और सभी विशेषाधिकारों के साथ कनेक्ट करने में सक्षम बनाता है। क्योंकि यह असुरक्षित है, आप दूरस्थ क्लाइंट्स को कनेक्ट होने से रोकने के लिए --skip- नेटवर्किंग के साथ संयोजन में --skip- अनुदान-तालिकाओं का उपयोग करना चाह सकते हैं।

  • इस कमांड के साथ mysqld सर्वर से कनेक्ट करें:

  • शेल> mysql mysql क्लाइंट में निम्न कथन जारी करता है। पासवर्ड को उस पासवर्ड से बदलें जिसे आप उपयोग करना चाहते हैं।

  • mysql> UPDATE mysql.user SET पासवर्ड = पासवर्ड ('MyNewPass') -> जहां उपयोगकर्ता = 'रूट'; mysql> FLUSH PRIVILEGES;

  • सर्वर बंद करें, फिर इसे सामान्य रूप से (बिना --स्किप-अनुदान-टेबल और --स्काइप-नेटवर्किंग विकल्प) के पुनरारंभ करें।

स्रोत मैसकल दस्तावेज और व्यक्तिगत अनुभव:

http://dev.mysql.com/doc/refman/5.6/en/resetting-permissions.html


2

mysql 5.7 में पासवर्ड फ़ील्ड को प्रमाणीकरण_स्ट्रिंग के साथ बदल दिया गया है ताकि आप इसके बजाय ऐसा कुछ करें

update user set authentication_string=PASSWORD("root") where User='root';

यह लिंक देखें MySQL उपयोगकर्ता DB में पासवर्ड कॉलम नहीं हैं - OSX पर MySQL स्थापित करना


1

मैंने कार्यक्षेत्र को व्यवस्थापक के रूप में चलाकर उसी समस्या को हल किया।

... मुझे लगता है कि यह कंपनी के कंप्यूटरों पर प्रतिबंध के कारण है, मेरे मामले में ...


0

इस समस्या को दूर करने के लिए निम्नलिखित चरणों को आज़माएँ:

  1. टर्मिनल खोलें / कमांड प्रॉम्प्ट करें और MySQL स्थापना फ़ोल्डर के बिन फ़ोल्डर में नेविगेट करें। फिर कमांड चलाएं mysqld --console
  2. यदि आप देख सकते हैं कि लाइन 171010 14:58:22 [Note] --secure-file-privNULL पर सेट है। कमांड प्रॉम्प्ट से उपरोक्त कमांड को निष्पादित करने के बाद, डेटा आयात और निर्यात से संबंधित ऑपरेशन अक्षम हैं।
  3. फिर आपको यह जांचने की आवश्यकता है कि mysqldया तो विंडोज फ़ायरवॉल या किसी अन्य प्रोग्राम द्वारा ब्लॉक किया गया है।
  4. अगर यह विंडोज फ़ायरवॉल द्वारा ब्लॉक किया गया है, तो इससे अनब्लॉक करने और सेटिंग्स को बचाने की आवश्यकता है।
  5. mysqldया mysqlएप्लिकेशन को अनवरोधित करने के लिए , नीचे दिए गए चरणों का पालन करें:
    1. कमांड प्रॉम्प्ट पर जाएं और wf.mscफ़ायरवॉल सेटिंग्स खोलने के लिए टाइप करें।
    2. विंडोज फ़ायरवॉल के माध्यम से एक एप्लिकेशन या सुविधा की अनुमति दें पर क्लिक करें।
    3. सूची में उपलब्ध mysqldया mysqldउदाहरण देखें और डोमेन, सार्वजनिक और निजी के लिए चेकबॉक्स की जांच करें और सेटिंग्स को सहेजें।
  6. बिन फ़ोल्डर पर लौटें और चरण 1 से फिर से कमांड का प्रयास करें।
  7. यह ठीक काम करना चाहिए और कोई त्रुटि नहीं दिखाना चाहिए।

अब बिना किसी समस्या के MySQL कंसोल को चलाना संभव होना चाहिए!


0

मैंने अगली sql का उपयोग करके और MySQL सर्वर को पुनः आरंभ करके उसी समस्या को हल किया:

update mysql.user set Select_priv='Y',Insert_priv='Y',Update_priv='Y',Delete_priv='Y',Create_priv='Y',Drop_priv='Y',Reload_priv='Y',Shutdown_priv='Y',Process_priv='Y',File_priv='Y',Grant_priv='Y',References_priv='Y',Index_priv='Y',Alter_priv='Y',Show_db_priv='Y',Super_priv='Y',Create_tmp_table_priv='Y',Lock_tables_priv='Y',Execute_priv='Y',Repl_slave_priv='Y',Repl_client_priv='Y',Create_view_priv='Y',Show_view_priv='Y',Create_routine_priv='Y',Alter_routine_priv='Y',Create_user_priv='Y',Event_priv='Y',Trigger_priv='Y',Create_tablespace_priv='Y'
where user='root';

0

मैंने कई घंटों तक यूजर के रूट '@' 'लोकलहोस्ट' (पासवर्ड का इस्तेमाल करते हुए: YES) के लिए पहुँच अस्वीकृत पर काम किया, मेरे पास इसका समाधान हल है,

The answer to this problem was that in the my.cnf located within
/etc/mysql/my.cnf

the line was either 
bind-address = 127.0.0.1 
            (or)
bind-address = localhost
            (or)
bind-address = 0.0.0.0

I should prefer that 127.0.0.1

I should also prefer 0.0.0.0, it is more flexible 
because which will allow all connections

0

मुझे नहीं लगता कि आपको --init-fileपैरामीटर से बचना होगा :

"C:\Program Files\MySQL\MySQL Server 5.6\bin\mysqld.exe" --defaults-file="C:\\Program Files\\MySQL\\MySQL Server 5.6\\my.ini" --init-file=C:\\mysql-init.txt

होना चाहिए:

"C:\Program Files\MySQL\MySQL Server 5.6\bin\mysqld.exe" --defaults-file="C:\\Program Files\\MySQL\\MySQL Server 5.6\\my.ini" --init-file=C:\mysql-init.txt


0

सिस्टम में उपर्युक्त समस्या के लिए उर पासवर्ड को प्रोग्राम में दिए गए पासवर्ड के साथ मेल खाना चाहिए क्योंकि जब आप प्रोग्राम चलाते हैं तो यह सिस्टम के पासवर्ड की जांच करता है क्योंकि यू ने उपयोगकर्ता के रूप में रूट दिया है इसलिए यू को एक त्रुटि मिलती है और साथ ही रिकॉर्ड डेटाबेस से हटाया नहीं गया है।

import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;
class Delete
{
    public static void main(String []k)
    {
        String url="jdbc:mysql://localhost:3306/student";

        String user="root";
        String pass="jacob234";
        try
        {
            Connection myConnection=DriverManager.getConnection(url,user,pass);
            Statement myStatement=myConnection.createStatement();
            String deleteQuery="delete from students where id=2";
            myStatement.executeUpdate(deleteQuery);
            System.out.println("delete completed");
        }catch(Exception e){
            System.out.println(e.getMessage());
        }
    }
}

Jacob234 के रूप में उर सिस्टम पासवर्ड रखें और फिर कोड चलाएँ।


0

मेरे साथ भी यही समस्या थी, लेकिन यह कारण था, क्योंकि मैं 32 (बिट) पर mysql सर्वर का उपयोग कर रहा था और कार्यक्षेत्र 64 (बिट) संस्करण पर चल रहा था। सर्वर और कार्यक्षेत्र को एक ही संस्करण की आवश्यकता है।

एक्सप्रेस



0

मैं उसी समस्या का सामना कर रहा था जब मैं लारवेल एप्लिकेशन का उपयोग करते हुए मैसकल डेटाबेस को जोड़ने की कोशिश कर रहा हूं। मैं सुझाव देना चाहूंगा कि कृपया उपयोगकर्ता के लिए पासवर्ड की जाँच करें। MySQL पासवर्ड में # , & , आदि जैसे विशेष वर्ण नहीं होने चाहिए ...


Bluehost पर, विशेष वर्णों को पासवर्ड से हटाने से वास्तव में समस्या ठीक हो गई।
मेना
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.