Mysql
 sql >> Baza danych >  >> RDS >> Mysql

lower_case_table_names=1 na Ubuntu 18.04 nie pozwala uruchomić mysql

Aby to działało w MySQL 8.0 i linuxie, wykonaj poniższe czynności

  1. Utwórz kopię zapasową schematu mysql przed wykonaniem poniższych kroków za pomocą

    mysqldump -h localhost -u root -p mysql> /home/username/dumps/mysqldump.sql

a następnie zatrzymaj mysql za pomocą

sudo service mysql stop
  1. przenieś lub usuń katalog /var/lib/mysql. Spowoduje to usunięcie wszystkich baz danych!!!!

    mv /var/lib/mysql /tmp/mysql
    
  2. Utwórz nowy katalog /var/lib/mysql i ustaw użytkownika mysql jako właściciela

    mkdir /var/lib/mysql
    chown -R mysql:mysql /var/lib/mysql
    chmod 750 /var/lib/mysql
    
  3. edytuj /etc/mysql/mysql.conf.d/mysqld.cnf i dodaj następującą linię po

    [mysqld]
    
    lower_case_table_names=1
    
  4. Zainicjuj mysql za pomocą następującego

    mysqld --defaults-file=/etc/mysql/my.cnf --initialize lower_case_table_names=1 --user=mysql --console
    

Zmień defaults-file na rzeczywistą lokalizację twojego defaults file.więcej informacji na temat inicjalizacji mysql tutaj:https://dev.mysql.com/doc/refman/8.0/en/data-directory-initialization-mysqld.html

  1. (Opcjonalnie) Powtórz

    chown -R mysql:mysql /var/lib/mysql
    chmod 750 /var/lib/mysql
    

jeśli właścicielem plików w /var/lib/mysql nie jest mysql

  1. Uruchom mysql za pomocą

    sudo service mysql start
    
  2. Jeśli wszystko działało poprawnie, otwórz mysql za pomocą

    mysql -u root -p
    

i uruchamiając to zapytanie

SHOW VARIABLES where Variable_name like 'lower%';

dostaniesz

'lower_case_table_names', '1'
  1. Przywróć schemat mysql za pomocą zrzutu utworzonego w kroku 0.

  2. Uruchom mysql_upgrade, aby utworzyć schemat sys



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Zamień na składnię zapytania

  2. MYSQL UPDATE SET w tej samej kolumnie, ale z wieloma klauzulami WHERE

  3. Jak odzyskać dane z Mysql z dni, które nie mają statystyk

  4. Złap zduplikowany wpis Wyjątek

  5. Jak utworzyć bazę danych MySQL za pomocą interfejsu wiersza poleceń (CLI)