2019 Nov. 02.
2019 Oct. 14.
2019 Jan. 03.
2019 Jan. 02.
2018 Nov. 18.
2018 Sep. 15.
2018 Sep. 02.
[client]
# default-character-set = utf8 (設定すると日本語入力できない)
[mysqld]
character-set-server=utf8
# default-character-set = utf8 ではmysqlが起動しない
[mysqldump]
default-character-set = utf8
[mysql]
# default-character-set = utf8 (設定すると日本語入力できない)
[mysqld]
sql_mode=''
secure-file-priv = ""
skip-networking
の行があれば削除もしくはコメント化する。
すべてのIPアドレスからのアスセスを許可 -> bind-address = 0.0.0.0
localhostからのアクセスのみを許可 -> bind-address =127.0.0.1
bind-addressを複数行記述すると最終行のみが有効。
1行に、スペース区切りで複数アドレスを記述すると最初のアドレスのみが有効。
"xxx.xxx.xxx." "xxx.xxx.xxx.0/24" "xxx.xxx.xxx.0/255.255.255.0" といった記述はできない。
mysqld: ALL (すべてのIPアドレスからのアクセスを許可)
mysqld: 127.0.0.1 (localhostからのアクセスを許可)
mysqld: 192.168.1. (192.168.1/24からのアクセスを許可)
# ufw allow 3306/tcp
# ufw allow 3306/udp
3306ポートをLISTENしているのを確認する。
$ netstat -na | grep 3306
$ mysql -h 127.0.0.1 -P 3306 -u root -p
システムシャットダウン時にmysqlを手動で止める?
# systemctl stop mysql.service && systemctl disable mysql.service
以下の対策では再発した。
shutdown時に"A stop job is running for MySQL Community Server" と表示され10分間停止してしまう現象への対処
( askubuntu.com/questions/615129/systemd-mysql-wont-stop より)
# chgrp mysql /etc/mysql/debian.cnf
# chmod 640 /etc/mysql/debian.cnf
# cp /lib/systemd/system/mysql.service /etc/systemd/system/
# chmod 755 /etc/systemd/system/mysql.service
# chmod 755 /etc/systemd/system/mysql.service
2019 Oct. 14.
2019 Jan. 03.
2019 Jan. 02.
2018 Nov. 18.
2018 Sep. 15.
2018 Sep. 02.
インストール
# apt install mysql-server
続いて
#
mysql_secure_installation
質問にはすべて "y" でよい。
"$ mysql -p -u root" でログインできるようにする
"$ mysql -p -u root" でログインできるようにする
"$ mysql -p -u root" でログインできない状態となっている。
"$ sudo mysql -p -u root" なら
ログインできる。
"$ mysql -p -u root" でログインできるようにする
( https://note.mu/junf/n/na40fbca9e6ea )
$ sudo mysql -u root -p
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'PASSWORD';
mysql> FLUSH PRIVILEGES;
別のターミナルを開いて sudo 無しでログインできるか確認する
利用文字コードをutf8にする。
/etc/mysql/conf.d/ に拡張子を".cnf"とする任意なファイル名で次の設定を記述
あるいは
~/.my.cnf に記述
[client]
# default-character-set = utf8 (設定すると日本語入力できない)
[mysqld]
character-set-server=utf8
# default-character-set = utf8 ではmysqlが起動しない
[mysqldump]
default-character-set = utf8
[mysql]
# default-character-set = utf8 (設定すると日本語入力できない)
確認
( www.jifu-labo.net/2015/09/ubuntu_epgrecuna/ より)
$ mysql -u root -p
文字コードの設定に問題がないか確認。
set_filesystemとsets_dir以外が全てutf8ならば問題ない。
mysql> show variables like
"char%"
;
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir |
/usr/share/mysql/charsets/
|
+--------------------------+----------------------------+
8 rows
in
set
(0.01 sec)
EPGREC用設定
・sql-modeの指定をしない(strict制約をしない)。sql_mode=''
・書き出し先ディレクトリ制約をしない。secure-file-priv = ""
・書き出し先ディレクトリ制約をしない。secure-file-priv = ""
[mysqld]
sql_mode=''
secure-file-priv = ""
ネットワーク(127.0.0.1 を含む)からのアクセスを許可する
/etc/mysql/ 内の設定ファイルにskip-networking
の行があれば削除もしくはコメント化する。
外部からのにアクセスを許可する場合
アクセス許可するIPアドレス設定(bind-address = 0.0.0.0)
/etc/mysql.conf.d/mysqld.cnf の "bind-address = xxx.xxx.xxx.xxx" を修正する。すべてのIPアドレスからのアスセスを許可 -> bind-address = 0.0.0.0
localhostからのアクセスのみを許可 -> bind-address =127.0.0.1
bind-addressを複数行記述すると最終行のみが有効。
1行に、スペース区切りで複数アドレスを記述すると最初のアドレスのみが有効。
"xxx.xxx.xxx." "xxx.xxx.xxx.0/24" "xxx.xxx.xxx.0/255.255.255.0" といった記述はできない。
/etc/hosts.allow 設定
mysqld: ALL (すべてのIPアドレスからのアクセスを許可)
mysqld: 127.0.0.1 (localhostからのアクセスを許可)
mysqld: 192.168.1. (192.168.1/24からのアクセスを許可)
3306ポート開放
# ufw enable# ufw allow 3306/tcp
# ufw allow 3306/udp
3306ポートをLISTENしているのを確認する。
$ netstat -na | grep 3306
$ mysql -h 127.0.0.1 -P 3306 -u root -p
PC shutdown時にmysqlが終了しない現象を防ぐ(ubuntu15.04以降)
システムシャットダウン時にmysqlを手動で止める?
# systemctl stop mysql.service && systemctl disable mysql.service
以下の対策では再発した。
shutdown時に"A stop job is running for MySQL Community Server" と表示され10分間停止してしまう現象への対処
( askubuntu.com/questions/615129/systemd-mysql-wont-stop より)
# chgrp mysql /etc/mysql/debian.cnf
# chmod 640 /etc/mysql/debian.cnf
# cp /lib/systemd/system/mysql.service /etc/systemd/system/
# chmod 755 /etc/systemd/system/mysql.service
/etc/systemd/system/mysql.service を編集する。
[Service]セクションに次の行を書き込む。
ExecStop=/usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf shutdown
変更をsystemdに登録する。
# systemctl daemon-reload
以下の対策はxubuntu16.04では改善されなかった。
( askubuntu.com/questions/615129/systemd-mysql-wont-stop より)
( askubuntu.com/questions/615129/systemd-mysql-wont-stop より)
# cat /etc/mysql/debian.cnf
password = xxxxx を確認する。
$ mysql -u root -p
mysql> GRANT ALL PRIVILEGES ON *.* TO 'debian-sys-maint'@'localhost' IDENTIFIED BY 'xxxxx' ;
mysql> flush privileges;
以下の対策はxubuntu16.04では改善されなかった。
# cp /lib/systemd/system/mysql.service /etc/systemd/system/# chmod 755 /etc/systemd/system/mysql.service
0 件のコメント:
コメントを投稿