今まで、私は常にphpでID(varchar 32主キー)を次のような関数で生成することにより、mysqlデータベースにレコードを保存していました。
$id = substr( str_shuffle( abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 ), 0, 8 );
しかし、これまで mysql DB では常に utf8_bin (大文字と小文字を区別する) を使用してきましたが、現在は utf8_general_ci (大文字と小文字を区別しない) を使用しています。
DB に統計を格納するテーブルがあります。このテーブルには何百万ものレコードがあります。
この場合、主キーとして「id int unsigned autoincrement」を使用することをお勧めしますか?
はいの場合、多くのユーザーが同時にsciprtを呼び出すと、スクリプトが「重複ID」エラーでクラッシュする可能性はありますか? どうすればそれを回避できますか?