sql >> Databasteknik >  >> RDS >> Mysql

small_case_table_names Inställningar i MySQL 8.0.12

Hittills kan jag få det att fungera med en lösning (jag postade ursprungligen på askubuntu ):genom att återinitiera MySQL med det nya värdet för lower_case_table_names efter installationen. Följande steg gäller för en ny installation. Om du redan har data i en databas, exportera den först för att importera tillbaka den senare:

  1. Installera MySQL:
    sudo apt-get update    
    sudo apt-get install mysql-server -y
    
  2. Stoppa MySQL-tjänsten:
    sudo service mysql stop
    
  3. Ta bort MySQL-datakatalogen:
    sudo rm -rf /var/lib/mysql
    
  4. Återskapa MySQL-datakatalogen (ja, det räcker inte att bara ta bort dess innehåll):
    sudo mkdir /var/lib/mysql    
    sudo chown mysql:mysql /var/lib/mysql
    sudo chmod 700 /var/lib/mysql
    
  5. Lägg till lower_case_table_names = 1 till [mysqld] avsnitt i /etc/mysql/mysql.conf.d/mysqld.cnf .
  6. Återinitiera MySQL med --lower_case_table_names=1 :
    sudo mysqld --defaults-file=/etc/mysql/my.cnf --initialize --lower_case_table_names=1 --user=mysql --console
    
  7. Starta MySQL-tjänsten:
    sudo service mysql start
    
  8. Hämta det nya genererade lösenordet för MySQL-användaren root :
    sudo grep 'temporary password' /var/log/mysql/error.log
    
  9. Ändra lösenordet för MySQL-användaren root antingen av:
    sudo mysql -u root -p
    
    och kör:
    ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPa$$w0rd';
    
    efteråt, ELLER genom att anropa "härdande" skriptet ändå:
    sudo mysql_secure_installation
    

Efter det kan du verifiera lower_case_table_names inställning genom att ange MySQL-skalet:

sudo mysql -u root -p

och kör:

SHOW VARIABLES LIKE 'lower_case_%';

Förväntad utdata:

+------------------------+-------+
| Variable_name          | Value |
+------------------------+-------+
| lower_case_file_system | OFF   |
| lower_case_table_names | 1     |
+------------------------+-------+


  1. Oracle-tabellen eller -vyn existerar inte inifrån den lagrade proceduren

  2. Hur man uppdaterar flera kolumner i MySQL

  3. Lägga till en en till många-relation till en självreferensförälder/barn

  4. Kommaseparerade resultat i SQL