データベースMySQLについて
・CentOS / RedHat ・Debian ・Windows ・Macintosh
まず、データベースのバックアップ、現状の確認、MySQLを停止、apt-get remove でMySQL 5.5 を削除、MySQL 5.7 インストール、MySQL再起動の手順です。
dpkg -l | grep 'mysql' で現状の確認
削除するMySQL 5.5 環境の確認(mysql-client mysql-server mysql-common mysql-community-client mysql-community-server mysql-utilites など)
インストール ここを参考に
mysql-server 再起動
MySQL 5.5から5.7へプログラムをアップグレードした後、データベースをアップグレードします。
Linuxのコマンドラインで、 $ sudo mysql_upgrade -uroot -p
アップグレードの手順 ここを参考に
Debian 8 や Debian 9 からDebian 10へMySQLをアップグレードした場合など、MySQLおよびMariaDBの設定環境が混在して、MySQLが起動しない場合がありました。
apt remove --purge コマンドでも設定ファイルなどが削除されない場合があります。
my.cnf の設定などは、次のサイトを参考に確認し、調整します。https://beyondjapan.com/blog/2016/03/2002-mysql-socket-error/
それでも動作が不安定、起動しない場合は、Debian 10を再インストールすることも解決策です。
アップグレードの手順 ここを参考に
アップグレードの手順 ここを参考に
アップグレードの手順 ここを参考に
Ubuntuではデフォルトで /etc/my.cnf ファイルがないので、自分で追加しました。他の設定方法もあるようですが。
/etc/my.cnfに以下の内容を追記
[mysqld]
innodb_buffer_pool_size=4G
max_allowed_packe=20M
innodb_log_buffer_size=256M
innodb_thread_concurrency=24
MariaDB再起動 sudo systemctl restart mysql sudo systemctl restart mysqld
作業中です。
環境: MySQL 5.0
・GRANT文でユーザー登録、パスワード指定
mysql > GRANT SELECT ON データベース名.フィールド名 TO 'ユーザー'@'ホスト' IDENTIFIED BY 'パスワード';
・SET PASSWORD文でパスワード設定
mysql > SET PASSWORD FOR 'ユーザー'@'ホスト'=PASSWORD('パスワード');
・UPDATE文でパスワード設定
mysql > UPDATE user SET Password=PASSWORD('パスワード') WHERE User='ユーザー' AND Host='ホスト';
mysql > FLUSH PRIVILEGES;
※ 権限テーブルを直接変更した場合は、FLUSH PRIVILEGES を実行し、テーブルを再度読み込み、権限の変更を反映させます。 mysqladminコマンドの場合 $ mysqladmin -uユーザー -hホスト password パスワード ・ユーザー登録 あらゆる操作ができるユーザーを登録
mysql > GRANT ALL PRIVILEGES ON *.* TO ユーザー IDENTIFIED BY 'パスワード'
mysql > GRANT ALL PRIVILEGES ON *.* TO 'ユーザー'@'ホスト' IDENTIFIED BY 'パスワード';
・ユーザーの削除
mysql > DROP USER 'ユーザー'@'ホスト';
・mysqladminを使う方法
$ mysqladmin -uroot -p create データベース名
$ mysqladmin -uroot -p drop データベース名
・SQLでの場合
mysql > CREATE DATABASE データベース名;
mysql > DROP DATABASE データベース名;
・mysqldumpコマンドの場合
gzipで圧縮
# mysqldump -u user -p データベース名 | gzip > dbname.dump.gz
リストア(インポート)する場合
zcat dbname.dump.gz | mysql -u user -p データベース名
パスワードはコマンドラインで入力します
sudoの場合は sudo zcat インポートファイル.sql.gz | sudo mysql -uユーザ名 -pパスワード DB名
・mysqldumpコマンドの場合
mysqldump -u root -p --all-databases > ~/backup.sql
cp -r /etc/mysql ~/
・リストア
mysql -u root -p < ~/backup.sql
環境 Debian 8.2
aptitude -y install phpmyadmin
apache2 を選択 設定 dbconfig-common ? いいえ を選択
/etc/phpmyadmin/apache.conf 編集 # Autorize for setup の下のRequire valid-user の上に Require ip 127.0.0.1 10.0.0.0/24 を記入
</IfModule>
Require ip 127.0.0.1 10.0.0.0/24
Require valid-user
</IfModule>
apache2 の再起動 sysemctl restart apache2 など