MySQLデータベースの作成

MySQLデータベースの作成

  • MySQLに接続してデータベースを作成する
  1. CREATE DATABASE(データベース作成)
  2. USE(データベース選択)
  3. CREATE TABLE(テーブル作成)
  4. GRANT(ユーザー作成)
コマンドプロンプト
  1. XAMPPコントロールパネルの「Shell」ボタンをクリックしコマンドプロンプトを起動します
  2. どのユーザーとしてログインするかを指定します
mysql -u root


  1. データベース「tennis」を作成

CREATE DATABASE tennis;

 ※データベース用のコマンドのことをクエリと呼びます

phpMyAdmin
  1. データベース「tennis」を作成


データベースの選択

コマンドプロンプト
  • USE文は、作成したデータベースを利用するためのコマンドです
  • ファイルを作成したら開かないと文章が書き込めないように、データベースも作った後、USE文を使って利用するデータベースを選択する必要があります
use tennis;
phpMyAdmin
  1. データベース「tennis」名前をクリックして選択

テーブルの作成

  • bbsテーブルを作成
コマンドプロンプト
CREATE TABLE bbs (
  id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(255) NOT NULL,
  title VARCHAR(255),
  body TEXT NOT NULL,
  date DATETIME NOT NULL,
  pass CHAR(4) NOT NULL,
) DEFAULT CHARACTER SET=utf8;
InnoDBMyISAMの違い

ユーザー作成

  • このデータベースにアクセスして操作できるユーザーを作成
  • rootではなく、このデータベースのみを操作できるユーザーを作成し、PHPからのプログラムもそのユーザーでアクセするようにします
GRANT構文
  • tennisデータベースを使うユーザー「tennisuser」を作成
  • ユーザーを作成するには、GRANT構文を使います
  • GRANT構文は、ユーザーに権限を与えるための構文です
  • すでに存在するユーザーに対しては権限の付与を、存在しないユーザーに対してはユーザーの作成と権限付与を同時に行います

GRANT 権限 ON データベース名 . テーブル名 to 'ユーザー名'@'ホスト名'
IDENTIFIDE BY 'パスワード';

コマンドプロンプト
GRANT ALL ON tennis.* to 'tennisuser'@'localhost'
IDENTIFIED BY 'password';
  • GRANT ALL すべての権限を指定
  • ON tennis.* tennisデータベースのすべてのテーブル
  • to 'tennisuser'@'localhost' PHPMySQLが同じサーバー内にある「localhost」にすべての権限をもつ「tennisuser」というユーザーが新たに作られる
  • IDENTIFIED BY MySQLにログインするときのパスワードを指定する


※ユーザーが作成されたら、MySQL内部の一時データを削除するため、以下のように入力します。

FLUSH PRIVILEGES;
phpMyAdmin
  • 「特権」→「ユーザーを追加」



作成したユーザーの確認

  • 再ログイン
コマンドプロンプト
mysql -u tennisuser -p
  • パスワードを訪ねられる
  • パスワードを入力して「Enter」キーを押す

続けて

USER tennis
DESC bbs;
  • USEでtennisテーブルを利用できるようにする
  • 「DESC テーブル名」とすることで、作成したテーブルの構造が表示されます
phpMyAdmin
  • ログアウトして再ログインする