Mysql
 sql >> база данни >  >> RDS >> Mysql

Прехвърлянията на отдалечена mySQL връзка не могат да се свържат с MySQL 4.1+, като се използва старата несигурна грешка при удостоверяване от XAMPP

Не ми е много ясно защо това стана проблем при моята XAMPP инсталация, тъй като аз също изпълнявам PHP 5.3.x на локалната кутия на сървъра и не изпитвах тези проблеми там. Това обаче е свързано с моя mySQL сървър, работещ в режим на криптиране „стара парола“. По-новите версии на PHP няма да позволяват тези видове връзки, така че трябва да актуализирате вашия mySQL сървър, за да използвате по-новото криптиране на паролата. Ето стъпките, ако приемем, че имате контрол върху mySQL сървъра. Ако не го направите, това излиза извън обхвата на моите познания.

  1. намерете конфигурационния файл за mysql сървъра, наречен my.cnf . Намерих моя в /etc/my.cnf . Можете да го редактирате с sudo nano /etc/my.cnf

  2. Потърсете ред, който казва old_passwords=1 и променете това на old_passwords=0 . Вече казахте на сървъра, че следващия път, когато бъде стартиран и той бъде помолен да шифрова парола с помощта на командата PASSWORD(), той използва новото 41-знаково криптиране, а не 16-знаковото криптиране в „стар“ стил

  3. Сега трябва да рестартирате вашия mysql сървър/услуга. YMMV, но във Fedora това беше лесно направено с sudo service mysqld restart . Проверете инструкциите на вашата ОС за рестартиране на демона или услугата mysql

  4. Сега трябва да редактираме нашия user таблица в mysql. Така че отворете интерактивна обвивка към mysql (на сървъра можете да въведете mysql -uYourRootUsername -pYourRootPassword )

  5. Променете на mysql база данни. Това е базата данни, която съдържа всички добри неща за работа на сървъра и удостоверяване. Трябва да имате root достъп, за да работите с тази база данни. Ако получите „отказан достъп“, вие сте SOL. Съжалявам. use mysql; ще премине към тази база данни

  6. Сега искаме да актуализираме потребителя, който ви е причинил скръб. В крайна сметка вероятно ще искате да актуализирате всичките си потребители, но засега ние се фокусираме само върху потребителя, който е пуснал грешката. update user set Password=password('YOUR_PASSWORD') where User='YOUR_USERNAME';

  7. Сега просто трябва да кажете на mysql да използва новата парола за удостоверяване, когато този потребител се опита да се свърже. flush privileges; .

Трябва да сте готови!




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Общи приятели sql с присъединяване (Mysql)

  2. GROUP_CONCAT разделител запетая - MySQL

  3. Как да деактивирате проверката на чужд ключ в MySQL

  4. Как да комбинирате ГРУПА ПО, ПОРЪЧКА ПО и ИМАЩА

  5. изтрийте всички записи от таблицата в mysql