FreeBSD 12.4 RELEASE - MySQL - 設定
- 1. コンフィグレーションファイルの設定
- 2. 文字コードを設定
- 3. プロンプトを変更する
- 4. 設定のチェック
1. コンフィグレーションファイルの設定
コンフィグレーションファイルは、
/usr/local/etc/mysql/my.cnf
です。
編集します。
vi /usr/local/etc/mysql/my.cnf
デフォルトは以下のように書かれています。
[client]
port = 3306
socket = /tmp/mysql.sock
[mysql]
prompt = \u@\h [\d]>\_
no_auto_rehash
[mysqld]
user = mysql
port = 3306
socket = /tmp/mysql.sock
bind-address = 127.0.0.1
basedir = /usr/local
datadir = /var/db/mysql
tmpdir = /var/db/mysql_tmpdir
replica-load-tmpdir = /var/db/mysql_tmpdir
secure-file-priv = /var/db/mysql_secure
log-bin = mysql-bin
log-output = TABLE
relay-log-recovery = 1
slow-query-log = 1
server-id = 1
sync_binlog = 1
sync_relay_log = 1
binlog_cache_size = 16M
binlog_expire_logs_seconds = 2592000
default_password_lifetime = 0
enforce-gtid-consistency = 1
gtid-mode = ON
safe-user-create = 1
lower_case_table_names = 1
explicit-defaults-for-timestamp = 1
myisam-recover-options = BACKUP,FORCE
open_files_limit = 32768
table_open_cache = 16384
table_definition_cache = 8192
net_retry_count = 16384
key_buffer_size = 256M
max_allowed_packet = 64M
long_query_time = 0.5
innodb_buffer_pool_size = 1G
innodb_data_home_dir = /var/db/mysql
innodb_log_group_home_dir = /var/db/mysql
innodb_data_file_path = ibdata1:128M:autoextend
innodb_temp_data_file_path = ibtmp1:128M:autoextend
innodb_flush_method = O_DIRECT
innodb_redo_log_capacity = 512M
innodb_log_buffer_size = 16M
innodb_write_io_threads = 8
innodb_read_io_threads = 8
innodb_autoinc_lock_mode = 2
[mysqldump]
max_allowed_packet = 256M
quote_names
quick
2. 文字コードを設定
「MySQL 5.7」では、デフォルトの文字コード設定で、「latin1」のものがあったので、文字コード設定を行っていたのですが。
文字コードを設定しようと、デフォルトの状態を確認すると。
mysql> show variables like "chara%";
+--------------------------+----------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------+
| character_set_client | utf8mb4 |
| character_set_connection | utf8mb4 |
| character_set_database | utf8mb4 |
| character_set_filesystem | binary |
| character_set_results | utf8mb4 |
| character_set_server | utf8mb4 |
| character_set_system | utf8mb3 |
| character_sets_dir | /usr/local/share/mysql/charsets/ |
+--------------------------+----------------------------------+
8 rows in set (0.00 sec)
mysql>
となっておる。
「utf8mb4」「utf8mb3」ってなんだろう?と思いつつ、以前と同じ設定を「/usr/local/etc/mysql/my.cnf」へ施して、再起動して確認しても、変更前と状況変わらず。
どうも、デフォルトの状態で、「utf8」の状態になっておるのかと思われます。
まだ、実際に、文字をいれて確認しているわけではありませんが、まぁ、デフォルトの状態にしておきます。
3. プロンプトを変更する
プロンプトが
ユーザ名@localhost [(none)]>
となってて、わたしは、装飾なしの方がいいのです。
prompt = \u@\h [\d]>\_
の行を削除するなり、コメントアウトするなりすれば
mysql>
に戻ります。
4. 設定のチェック
以降、編集したら、それを反映させるには
service mysql-server restart
で「mysql-server」を再起動するのですが。
編集を失敗していると停止だけして、起動できないことになります。
「MySQL 5.7」では、「apache」の「configtest」みたいなことを
/usr/local/libexec/mysqld --verbose --help > /dev/null
というコマンドで実現できていたのですが、どうも、「MySQL 8.0」では、効果ないようです。
現在(2022年12月19日)何か、方法がないかと調査中です。
|
|