2011-06-06 9 views
8

में mysql5 रूट पासवर्ड रीसेट करें मैंने अभी हिम तेंदुए पर मैकपोर्ट 1.9.2 के माध्यम से मैकपोर्ट स्थापित किए हैं। अब मैं mysql का उपयोग नहीं कर सकता क्योंकि ऐसा लगता है जैसे मुझे पासवर्ड नहीं पता था।मैकपोर्ट

$ sudo mysql5 -u root -p 
Enter password: 
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 

मुझे यकीन है कि अगर यह स्थापित करने या उपयोग में कुछ त्रुटि है, या मैं सिर्फ पासवर्ड भूल गया नहीं हूँ, लेकिन मुझे लगता है मैं पासवर्ड रीसेट करने की जरूरत है। यह कैसे करना है?

अद्यतन: मैं अपने MySQL सर्वर को शुरू और बंद कर सकता हूं, इसलिए इसे तोड़ा नहीं जाना चाहिए, लेकिन मेरे पास $ sudo/opt/local/lib/mysql5/bin/mysqld_safe5 जैसे कमांड नहीं है।

$ ls /opt/local/lib/mysql5/bin/ 
innochecksum   mysql_client_test  mysql_secure_installation mysqlbinlog   mysqlimport   ndb_drop_index   ndb_select_all   resolve_stack_dump 
msql2mysql   mysql_client_test_embedded mysql_setpermission  mysqlbug   mysqlshow   ndb_drop_table   ndb_select_count  resolveip 
my_print_defaults  mysql_config   mysql_tzinfo_to_sql  mysqlcheck   mysqlslap   ndb_error_reporter  ndb_show_tables 
myisam_ftdump   mysql_convert_table_format mysql_upgrade   mysqld_multi   mysqltest   ndb_mgm    ndb_size.pl 
myisamchk   mysql_find_rows   mysql_waitpid   mysqld_safe   mysqltest_embedded  ndb_print_backup_file  ndb_test_platform 
myisamlog   mysql_fix_extensions  mysql_zap   mysqldump   ndb_config   ndb_print_schema_file  ndb_waiter 
myisampack   mysql_fix_privilege_tables mysqlaccess   mysqldumpslow   ndb_delete_all   ndb_print_sys_file  perror 
mysql    mysql_install_db  mysqladmin   mysqlhotcopy   ndb_desc   ndb_restore   replace 
+0

मेरा उत्तर की जाँच करें: mysqld_safe – technology

+0

कुछ के साथ बदल दिया mysqld_safe5 साथ ठीक नहीं है मेरी स्थापित: mysql> उपयोगकर्ता अद्यतन सेट पासवर्ड = पासवर्ड ('नई-पासवर्ड') जहाँ उपयोगकर्ता = 'जड़'; क्वेरी ठीक है, 0 पंक्तियों प्रभावित (0.03 सेकंड) पंक्तियाँ मिलान नहीं हुआ: 0 परिवर्तित: 0 चेतावनी: 0 अगर मैं मैन्युअल रूप से जड़ बनाने का प्रयास करें, यह कहता है कि मैं छोड़-अनुदान तालिकाओं के साथ नहीं कर सकते हैं ... पुनर्स्थापित ? – mimrock

+1

पुनर्स्थापित करने का प्रयास करें। – technology

उत्तर

6

मैं एक ही समस्या थी। जब पासवर्ड रीसेट करने के (के रूप में develroot सुझाव) की कोशिश कर रहा है, मैं भी मिला:

Rows matched: 0 Changed: 0 Warnings: 0 

तो जड़ उपयोगकर्ता कभी नहीं पहली जगह में निर्मित किया गया था। मैंने डेवेलरूट के उत्तर के अलावा निम्नलिखित कदम उठाए:

flush privileges; 
CREATE USER 'root'@'localhost' IDENTIFIED BY 'root' 
GRANT ALL ON *.* TO 'root'@'localhost' 
+0

यह मैकपोर्ट स्थापित करने के बाद भी मेरे साथ हुआ। आपके समाधान ने इसे ठीक किया। धन्यवाद –

+0

lol यह भी मेरे साथ हुआ, यह अजीब समस्या थी - 'वहां कोई भी उपयोगकर्ता नहीं है !!' – holms

16

सब आप सुनिश्चित करें कि आपके डेटाबेस बंद कर दिया है की आवश्यकता होगी सबसे पहले:

$ sudo /opt/local/share/mysql5/mysql/mysql.server stop 

अब आप पृष्ठभूमि में डेटाबेस को शुरू कर देना चाहिए, mysqld_safe आदेश के माध्यम से:

$ sudo /opt/local/lib/mysql5/bin/mysqld_safe --skip-grant-tables & 

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

$ sudo mysql5 --user=root mysql 
Enter password: 

mysql> update user set Password=PASSWORD('new-password-here') WHERE User='root'; 
Query OK, 2 rows affected (0.04 sec) 
Rows matched: 2 Changed: 2 Warnings: 0 

mysql> flush privileges; 
Query OK, 0 rows affected (0.02 sec) 

mysql> exit 
Bye 

अब आप यह कर लें कि आप बस इतना है कि आप जगह में पासवर्ड प्रतिबंध के साथ एक सुरक्षित MySQL सर्वर चल रहा करने के लिए वापस जा सकते हैं, सर्वर को रोकने के लिए की जरूरत है। सबसे पहले सर्वर को "fg" टाइप करके अग्रभूमि में शुरू किया गया है, उसके बाद "Ctrl + c" दबाकर इसे मार दें।

यह अब आप सर्वर शुरू करने के लिए अनुमति देगा:

$ sudo /opt/local/share/mysql5/mysql/mysql.server start 
+0

आपके उत्तर के लिए धन्यवाद। दुर्भाग्यवश, मेरे पास यह आदेश नहीं है, विवरण के लिए मूल प्रश्न देखें। – mimrock

+0

@ मिमरॉक - आपके पास 'mysqld_safe' है। –

2

यह मेरा तय है।

इस चलाने के बाद: sudo -u mysql mysql_install_db5

मैं यह त्रुटि आई: पिछली रिपोर्टों के रूप में

ERROR: 1004 Can't create file '/var/tmp/#sql180bd_1_0.frm' (errno: 9) 
121221 2:06:21 [ERROR] Aborting 

ही, मेरे उन तालिका खाली था --- सब mysql टेबल अंततः emtpy

थे, मुझे यह करने के लिए पता चला:

  1. sasqld को sa में चलाएं फी मोड

    sudo/opt/स्थानीय/bin/mysqld_safe5 --skip-अनुदान टेबल &

  2. लॉग इन और ड्रॉप टूटा mysql डेटाबेस

    $ MySQL5 $ mysql> ड्रॉप तालिका mysql;

  3. जड़ बजाय mysql के रूप में mysql_install_db5 पुन: चलाने तो यह कम से कम काम किया हो सकता है

    $ sudo -u जड़ mysql_install_db5

  4. फिर वापस जाएँ और chown आर/opt में सब कुछ/स्थानीय/var/db/mysql5 mysql पर: mysql जैसा कि यह होना चाहिए।

    $ sudo chown आर mysql: mysql/opt/स्थानीय/var/db/MySQL5/ $ sudo chown आर mysql: mysql/opt/स्थानीय/var/रन/MySQL5/ $ sudo chown आर mysql : mysql/opt/local/var/log/mysql5/

  5. सब कुछ उसके बाद ठीक काम करता है, धन्यवाद।

संबंधित मुद्दे