sql >> データベース >  >> RDS >> Mysql

lower_case_table_namesMySQL8.0.12の設定

    これまでのところ、回避策で動作させることができます(私はもともとaskubuntu に投稿しました ):lower_case_table_namesの新しい値でMySQLを再初期化する インストール後。次の手順は、新規インストールに適用されます。データベースにすでにデータがある場合は、最初にエクスポートして後でインポートし直します:

    1. MySQLのインストール:
      sudo apt-get update    
      sudo apt-get install mysql-server -y
      
    2. MySQLサービスを停止します:
      sudo service mysql stop
      
    3. MySQLデータディレクトリを削除します:
      sudo rm -rf /var/lib/mysql
      
    4. MySQLデータディレクトリを再作成します(はい、そのコンテンツを削除するだけでは不十分です):
      sudo mkdir /var/lib/mysql    
      sudo chown mysql:mysql /var/lib/mysql
      sudo chmod 700 /var/lib/mysql
      
    5. lower_case_table_names = 1を追加します [mysqld]/etc/mysql/mysql.conf.d/mysqld.cnfのセクション 。
    6. MySQLを--lower_case_table_names=1で再初期化します :
      sudo mysqld --defaults-file=/etc/mysql/my.cnf --initialize --lower_case_table_names=1 --user=mysql --console
      
    7. MySQLサービスを開始します:
      sudo service mysql start
      
    8. MySQLユーザーroot用に新しく生成されたパスワードを取得します :
      sudo grep 'temporary password' /var/log/mysql/error.log
      
    9. MySQLユーザーrootのパスワードを変更します いずれか:
      sudo mysql -u root -p
      
      実行中:
      ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPa$$w0rd';
      
      その後、またはとにかく「強化」スクリプトを呼び出すことによって:
      sudo mysql_secure_installation
      

    その後、lower_case_table_namesを確認できます MySQLシェルに入って設定する:

    sudo mysql -u root -p
    

    実行中:

    SHOW VARIABLES LIKE 'lower_case_%';
    

    期待される出力:

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


    1. mysqlの一連の行の累積合計

    2. OracleDatabaseからMariaDBへの移行-知っておくべきこと

    3. PL / SQLの既存の表に列を追加する前に、列が存在するかどうかを確認するにはどうすればよいですか。

    4. Azure仮想マシンでのSQLServer2014の実行