MySQL コマンドライン・クライアントの主な機能は, Windows のコマンドプロンプトなどで動作するツール. このページでは,MySQL のコマンド で下記の操作を行う手順を説明する.
【目次】
このページでは,データベースの作成を行うので, 作成するデータベースのデータベース名と漢字コードと照合順序を決めておくこと. このページでは,次のように書く.
データベース名は,自由に決めてよいが,半角文字(つまり英字と英記号)を使い,スペースを含まないこと,
照合順序は,ソートや集約における照合において,デフォルトでは,大文字と小文字を区別するかそうでないかを指定するという意味.
sjis (Shift-JIS Japanese), cp932 (SJIS for Windows Japanese)
ujis *EUC-JP Japanese), eucjpms (UJIS for Windows Japanese)
このページでは,データベース・一般ユーザのアカウントを作成するので,そのユーザ名とパスワードを決めておくこと. このページでは次のように書く.
※ データベース・一般ユーザのアカウント作成やデータベースの作成と権限の設定には, MySQL データベース管理者 (root)のパスワードが必要になるので,前もって調べておくこと.
「root」は MySQL データベース管理者のユーザ名,
「-D mysql」は,使用するデータベースを mysql に設定している.
mysql -u root -p -D mysql
プロンプトが出るので, ここでは,MySQL データベース管理者のパスワードを入れる.
画面にパスワードが表示されないのは正常動作.
「sudo mysql -d mysql」により起動.
「root」は MySQL データベース管理者のユーザ名,
「-D mysql」は,使用するデータベースを mysql に設定している.
sudo mysql -D mysql
「exit」で終了.
exit
ユーザ名として testuser,パスワードとして HOGE$#34hoge5 を設定したいときの操作は次の通り.
パスワードは,必ず独自に設定してください.
「select * from mysql.user;」はユーザの確認
create user testuser identified by 'HOGE$#34hoge5'; select * from mysql.user;
すでに MySQL のユーザ testuser のパスワードを設定済みで, パスワードを HOGE!%12hoge5に変更したい場合は,次のように操作.
mysql でなく mysqladmin コマンドを使うのが簡単.
mysqladmin --user=testuser --password="(古いパスワード)" password "HOGE!%12hoge5"
mysql で,「drop user <ユーザ名> ;」のように操作する.
データベースの作成は, mysql の create database コマンド.
例えば,
の場合には次のようになる.
create database testdb default character set cp932 collate cp932_japanese_ci;
「default character set ...」の部分は漢字コードの指定, 「collate ...」の部分照合順序の指定.
例えば,
の場合には次のようになる.
create database testdb default character set utf8 collate utf8_unicode_ci;
「default character set ...」の部分は漢字コードの指定, 「collate ...」の部分照合順序の指定.
出来た データベースは,show databasesコマンドで確認できる.
show databases;
このままでは,出来たデータベースは,作成者にしか使えない. 権限を設定して,他の MySQL ユーザにもデータベースが使えるようにする.
データベース testdb の使用権限を,ユーザtestuser に与えるための操作は次の通り(grant コマンドを使用).
grant all on testdb.* to 'testuser';
mysql で,「drop database <データベース名> ;」のように操作する.
create table commodity ( id integer primary key not null, name varchar(32) not null, price integer ); insert into commodity values( 1, 'apple', 50 ); insert into commodity values( 2, 'orange', 20 ); insert into commodity values( 3, 'strawberry', 100 ); insert into commodity values( 4, 'watermelon', 150 ); insert into commodity values( 5, 'melon', 200 ); insert into commodity values( 6, 'banana', 100 ); select * from commodity;
期待される結果.
ID NAME PRICE ---- ---------- ----- 1 apple 50 2 orange 20 3 strawberry 100 4 watermelon 150 5 melon 200 6 banana 100
実行結果
source <ファイル名>
データベース内のテーブル一覧を表示するには,show tablesコマンドを使う.
show tables;