コンテナ # docker run -d --name mydb -e MYSQL_ROOT_PASSWORD=root123 mariadb \ mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci # docker exec -it mydb mysql -h 127.0.0.1 -u root -proot123 CentOS 6 (MySQL 5.1) # yum install -y mysql mysql-server # chkconfig mysqld on # service mysqld start CentOS 7 (MariaDB 5.5) # yum install -y mariadb mariadb-server # systemctl enable mariadb # systemctl start mariadb CentOS 8 (MariaDB 10.3) # dnf install -y mariadb mariadb-server # systemctl enable mariadb # systemctl start mariadb CentOS 8 (MariaDB 10.4) # curl -O https://downloads.mariadb.com/MariaDB/mariadb-10.4.8/yum/centos/mariadb-10.4.8-rhel-8-x86_64-rpms.tar # tar xvf mariadb-10.4.8-rhel-8-x86_64-rpms.tar # cd mariadb-10.4.8-rhel-8-x86_64-rpms # dnf localinstall -y \ galera-4-26.4.2-1.rhel8.0.el8.x86_64.rpm \ MariaDB-client-10.4.8-1.el8.x86_64.rpm \ MariaDB-common-10.4.8-1.el8.x86_64.rpm \ MariaDB-server-10.4.8-1.el8.x86_64.rpm \ MariaDB-shared-10.4.8-1.el8.x86_64.rpm Ubuntu 14.04 (MariaDB 5.5) # sudo apt-get install -y mariadb-server # sudo service mysql start Ubuntu 16.04 (MariaDB 10.0) # sudo apt-get install -y mariadb-server # sudo service mysql start Ubuntu 18.04 (MariaDB 10.1) # sudo apt-get install -y mariadb-server # sudo service mysql start Ubuntu 18.04 (MariaDB 10.4) # curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash # sudo apt-get install -y mariadb-server-10.4
CentOS 6/7/8 # vi /etc/my.cnf Ubuntu 14.04 LTS # sudo vi /etc/mysql/my.cnf
my.cnf に下記を追記します。
[mysqld] # 文字コードを utf8mb4 にする character-set-server=utf8mb4 # バイナリログを取得する log-bin=mysql-bin max_binlog_size=256M expire_logs_days=7 # スロークエリログを取得する slow_query_log=1 [client] # 文字コードを utf8mb4 にする default-character-set=utf8mb4
# mysql_secure_installation Enter current password for root (enter for none): Set root password? [Y/n] Y New password: ******** Re-enter new password: ******** Remove anonymous users? [Y/n] Y Disallow root login remotely? [Y/n] Y Remove test database and access to it? [Y/n] Y Reload privilege tables now? [Y/n] Y
# mysql -h localhost -u root -p Enter password: mysql> quit
ユーザを作成する mysql> create user ユーザ名 identified by 'パスワード'; ユーザに権限を付与する mysql> grant all on データベース名.テーブル名 to ユーザ名;
データベースを作成する mysql> create database データベース名; データベースを利用する mysql> use データベース名; データベースの一覧を表示する mysql> show databases; データベースを削除する mysql> drop database データベース名;
テーブルを作成する mysql> create table テーブル名 ( カラム1 型1, カラム2 型2, ...); テーブルの一覧を表示する mysql> show tables; テーブルの詳細を表示する mysql> desc テーブル名; テーブルを削除する mysql> drop table テーブル名;
レコードを挿入する mysql> insert into テーブル名 ( カラム1, カラム2 ) values ( 値1, 値2 ); レコードを表示する mysql> select カラム1, カラム2 from テーブル名; 条件を指定してレコードを表示する mysql> select カラム1, カラム2 from テーブル名 where カラム1 = 値1; レコードを更新する mysql> update テーブル名 set カラム2 = 値2 where カラム1 = 値1; レコードを削除する mysql> delete from テーブル名 where カラム1 = 値1;