sql >> Database >  >> RDS >> Mysql

MySQL maakt geen verbinding bij implementatie van EC2 met Rubber

Als iemand anders dit probleem heeft, is dat omdat mysql nu standaard anonieme gebruikers heeft toegevoegd met beperkte toegang.

Het probleem wordt hier besproken .

De eerste oplossing daar is niet uitgebreid genoeg, je hebt degene aan het einde nodig die alle anonieme gebruikers verwijdert (niet alleen localhost). Dit komt omdat MYSQL op HOST wordt geverifieerd vóór de GEBRUIKER, dus een anonieme gebruiker ''@'uw.host.com' heeft voorrang op 'dbuser'@'uw.host.com' (gedocumenteerd in mysql-documentatie ) en rubber probeert verbinding te maken met de volledige hostnaam.

Bewerk uw ./config/rubber/deploy-mysql.yml:

rubber.sudo_script "create_master_db", <<-ENDSCRIPT
  mysql -u root -e "create database #{env.db_name};"
  mysql -u root -e "delete from mysql.user where user='';"   <<-- ADD THIS LINE
  ...
ENDSCRIPT


  1. gcc zal MySQL C-bibliotheken niet compileren en uitvoeren

  2. PHP-forums - hoe om te gaan met ongelezen discussies / onderwerpen / berichten

  3. MariaDB MaxScale Load Balancing op Docker:Beheer:deel twee

  4. Het gebruik van de OR-clausule optimaliseren bij gebruik met parameters (SQL Server 2008)