第3回 コマンドによるMySQL管理テクニック
前回に引き続き、MySQLのコマンドについて解説する。また、MySQLの設定を保存しているmysqlデータベースの内部構成を知ることで、MySQLへの理解を深めてほしい。
鶴長 鎮一
MySQLユーザ会
2001/2/16
■データベースの作成
前回は、既存のtestデータベースを使って操作を解説しました。肝心のデータベース作成の手順については、まだお話ししていませんでした。
データベースの作成/削除やMySQLサーバの再起動/停止といった重要な作業は“mysqladmin”コマンドで行います。このmysqladminコマンドを使えるのは、許されたユーザーだけに限られます。試しに、一般ユーザーでMySQLサーバの権限参照定義を再読み込みさせてみましょう。
$ mysqladmin reload |
上記のように、一般ユーザーの操作は受け付けないようになっています。特別な操作が許されるスーパーユーザー(root)で同じようにやってみましょう(MySQLサーバとmysqladminコマンドを使用するサーバは同一である必要があります)。
# mysqladmin reload |
今度は何事もなく終了したと思います。しかし、mysqladminコマンドを使うたびにsuしていたのでは操作が煩わしくなります。そこで、一般ユーザーでmysqladminコマンドを使用できるように、オプションでユーザーを指定します。
$ mysqladmin -u root reload |
インストールをしただけの状態では、rootユーザーに対するパスワードが設定されていないため、パスワードの入力を促す、“-p”オプションは指定していません。レンタルサーバを利用している場合などは、管理者でないと使えないので、mysqladminを使う必要がある場合はサーバ管理者に相談しましょう。
では上記のことをふまえて、まずはデータベースを作成してみましょう。
$ mysqladmin -u root create TEST2 |
mysqlshowコマンドで確認してみましょう。
$ mysqlshow |
このように、TEST2が作られていれば成功です。
データベースを削除する場合は
$ mysqladmin -u root drop TEST2 |
とし、
Dropping the database is potentially a very bad thing to
do. |
の質問に“y”とタイプすれば、削除されます。
作成したデータベースを切り替えて操作するには、mysqlコマンドを起動する際にデータベースを指定します。
$ mysql データベース名 |
ですが、この方法ではデータベースを切り替えるたびにmysqlプロンプトを抜ける必要があります。一連の操作の中で、mysqlコマンドを終了させることなくデータベースを切り替えるには下記のようにします。
$ mysql test |
これで、データベースを切り替えることができますが、実際には
ERROR 1044: Access denied for user: '@localhost' to database
'TEST2' |
となってうまくいかないと思います。これは、参照権の問題です。TEST2データベースを作成した際、rootユーザーでmysqladminコマンドを使用したため、データベースの操作もrootのみに限られてしまったのです。これについては、後ほど紹介するユーザー参照権についてで説明します。
■mysqlとmysqladminのオプション
mysql/mysqladminコマンドのオプションの指定方法は2通りあります。1つは前出の
$ mysqladmin -u ユーザー名 [操作] |
のように、オプションを“-”で指定して値を入力する方法。もう1つは
$ mysqladmin --user=ユーザー名 [操作] |
のように、“--”の後にオプションを指定し、“=”の後に値を入力する方法です。どちらを使うかは好みの分かれるところです。
よく利用されるオプションには下記のようなものがあります。
[mysqlコマンドオプション]
- --user=ユーザー名
- -u ユーザー名
ユーザー名の指定
-
--password
-
-p
サーバに接続する際のパスワードの指定。パスワードは“Enter password:”プロンプトの後に入力する
-
--host=ホスト名
-
-h ホスト名
MySQLサーバのホスト名(またはIPアドレス)
-
--port=ポート番号
-
-P ポート番号
MySQLサーバのポート番号を指定する場合。デフォルトの“3306”で起動されている場合は省略可能
- --default-character-set=キャラクタセット
MySQLサーバのキャラクタセットを指定。EUCなら“ujis”。SJISなら“sjis”
[mysqladminコマンドオプション]
- --user=ユーザー名(-u ユーザー名)
- --password(-p)
- --host=ホスト名(-h ホスト名)
- --port=ポート番号(-P ポート番号)
はmysqlコマンドと同じように指定できます。
ほかにも下記のようなものがあります。
- --help
- -?
ヘルプの表示
-
--version
- -V
バージョンの表示
そのほかのオプションについては
http://www.mysql.gr.jp/jpdoc/3.23/manual.ja_Installing.html#Command-line_options
を参照してください。
|
1/2
|
| Index | |
| 快速MySQLでデータベースアプリ! | |
| mysqladminの基本操作 データベースの作成 mysqlとmysqladminのオプション |
|
| コマンド操作の応用 外部ファイルによるバッチ処理 結果をファイルへ出力 |
|
| ユーザー参照権について userテーブル dbテーブル |
|
| 次回予告 | |
| 連載 快速MySQLでデータベースアプリ! |
| Linux Squareフォーラム データベース関連記事 |
| 連載:快速MySQLでデータベースアプリ!(全11回) 軽快な動作で知られるRDBMS、MySQLでDBアプリの構築を行う。MySQLのインストールに始まり、PerlやRubyなどのスクリプトでデータベースを操作する方法までを完全解説 |
|
| 連載:今から始める MySQL入門(連載中) 定番のLAMP(Linux+Apache+MySQL+PHP)構成でWebアプリケーション開発に挑戦! サンプルアプリの構築を進めながら、基礎知識や操作方法について詳しく解説する |
|
| 連載:Oracleマイスター養成講座(全6回) 本連載では、Oracleの管理・チューニング方法を紹介していく。これからOracleを始める人、そしてOracleをより深く理解したい人のための、一歩踏み込んだ実用講座 |
|
| 連載:DB2マイスター養成講座(全7回) 本連載では、DB2 UDBの実践的な運用・管理方法を紹介していく。DB2を利用するうえで必要な知識を、実運用を前提にDB2のプロが解説 |
|
| 特集:エンタープライズ市場に向かうMySQL
5.0[前編] MySQL 5.0の新機能をアルファ版でチェック 1月に公開された5.0アルファ版は大幅に拡張されており、エンタープライズ市場への進出を予感させる |
|
| 特集:Linuxで動くリレーショナルデータベース・カタログ データベースサーバのOSとしてLinuxを採用するケースが増えている。Linuxで動作する7つの主なリレーショナルデータベースを紹介する。製品導入の際の参考にしてほしい |
|
|
TechTargetジャパン
- OSSライセンスの採用傾向に「変化」あり (2012/5/21)
OSS普及の一翼を担ってきたライセンス、GPLファミリー採用の割合が減少傾向にあるそうです。いったいどうして? - ここからFirefoxの反撃が始まる (2012/3/12)
2月のLinux SquareのランキングではFirefoxの記事がダントツのページビューを集め、トップに立ちました - CMakeでMySQLをビルドしてみる (2012/3/8)
ここまでの作業でCMakeを使う準備が整いました。今回はひとまずMySQLをビルドしてみます - MySQLのビルドに欠かせないCMakeを準備する (2012/3/2)
今回は、MySQLをビルドするために欠かせないツール「CMake」をインストールし、使う準備をします
|
|
キャリアアップ
スポンサーからのお知らせ
- - PR -
イベントカレンダー
- - PR -
