GNU/Linux >> Linux の 問題 >  >> Linux

Linux での MySQL の大文字と小文字を区別するテーブル名

lower_case_table_names 設定を変更するだけでは十分ではありません。データベースをインポートする前に行う必要があります。

MySQL 5.1 のドキュメントには、Windows と Linux/UNIX の間で移動するための手順が記載されています。これにより、大文字と小文字の区別を強制するための必要な規則が確実に守られます。これらの手順を正しい順序で実行したことを確認してください:

<ブロック引用>

1 つまたは複数のデータベース全体を変換するには、lower_case_table_names を設定する前にそれらをダンプし、次にデータベースを削除し、lower_case_table_names を設定した後に再ロードします:

1 - mysqldump を使用して各データベースをダンプします:

mysqldump -- データベース db1> db1.sql

mysqldump -- データベース db2>db2.sql

... 再作成する必要があるデータベースごとにこれを行います。

2 - DROP DATABASE を使用して各データベースを削除します。

3 - サーバーを停止し、lower_case_table_names を設定します [mysqld]\etc\mysql\my.cnf のセクション ファイルを作成し、サーバーを再起動してください。

4 - 各データベースのダンプ ファイルを再読み込みします。 lower_case_table_namesis が設定されているため、各データベースとテーブル名は再作成時に小文字に変換されます:

mysql

mysql

Linux
  1. LinuxにMariaDBまたはMySQLをインストールする

  2. ある mysql データベースから別の mysql データベースにテーブルをコピーする方法

  3. Linuxサーバー上のMySQLデータベースを自動的にバックアップします

  1. データベース間でMySQLテーブルをコピーする方法

  2. Linux のコマンドラインからテーブルを切り捨てる

  3. mysql データベースの回復 - mysql/mysqldump がテーブル <database>.<tablename> を指定します (1146)

  1. WorkbenchでMySQLデータベースを作成する方法

  2. 破損したMysqlデータベーステーブルを修復する方法

  3. Mysql日時DEFAULT CURRENT_TIMESTAMPエラー