データベース作成
キャラクタセットを指定してデータベースを作成
CREATE DATABASE データベース名 CHARACTER SET utf8;
ユーザ権限
グローバル権限
GRANT all ON *.* TO user1@localhost IDENTIFIED BY 'password';
ON *.* とすると、すべてのデータベースに対して権限を付与できます。
データベース権限
GRANT all ON database1.* TO user1@localhost IDENTIFIED BY 'password';
ON データベース名.* とすることで、特定のデータベースに対して権限を付与できます。
ユーザーの設定について
・アカウント名の構文は
公式mySQLのマニュアルから抜粋'です。user_name'@'host_name'
・ユーザー名のみで構成されるアカウント名は、'と同等です。たとえば、user_name'@'%''me'は'me'@'%'と同等です。
メモ:mySQLのセキュリティは、ユーザ名、ホスト名、パスワードで管理
テーブル
テーブル作成
CREATE TABLE users ( id int(11) unsigned NOT NULL auto_increment, username varchar(100) NOT NULL, password varchar(100) NOT NULL, name varchar(100) default NULL, email varchar(100) default NULL, PRIMARY KEY (id) )DEFAULT CHARSET=utf8;
カラムの追加
ALTER TABLE testTableName ADD colA tinyint AFTER endDate;
データベース接続
MySQLサーバに接続 (1)
$ mysql -uユーザ名 -p データベース名 Enter password: [パスワード]
MySQLサーバに接続 (2)
$ mysql --user=ユーザ名 --password=パスワード データベース名
日付型
| date | 年月日(時刻なし) |
| datetime | 年月日時刻 |
| datetimestamp | 特別な理由がない限り使わない |
リストア
gz圧縮されたファイルを、リストア
zcat mysql_backup.sql.gz | mysql -uUserName -pPassword DatabaseName
デーモンの停止
service mysql stop
タイムゾーン
タイムゾーンの確認
show variables like '%time_zone%';
タイムゾーンの設定
set global time_zone='+00:00'
バックアップ
mysqldump --single-transaction -u [ユーザ名] -p [データベース名] > [出力ファイル名]
— single-transaction ある時点のスナップショットからバックアップすることで、バックアップ中にテーブルロックさせない。InnoDBに限る。

コメント