だいぶハマりました。MySQLのbinまでのパスを通さないことってありますよね?
2.3.5.6 MySQL ツールの PATH をカスタマイズする
MySQL プログラムの起動を簡単にするために、MySQL の bin
ディレクトリのパス名を Windows システムの PATH
環境変数に追加できます。
MySQL bin
ディレクトリの完全なパス名を入力します (C:\Program Files\MySQL\MySQL Server 5.6\bin
など)。
システムのどのディレクトリからでも、DOS プロンプトにパスを指定せずに MySQL の実行プログラム名を入力して、すべての MySQL 実行プログラムを呼び出すことができます。これにはサーバー、mysql クライアント、および mysqladmin と mysqldump などのすべての MySQL コマンド行ユーティリティーが含まれています。
同じマシンで複数の MySQL サーバーを動作させている場合には、MySQL bin
ディレクトリを Windows PATH
に追加しないでください。
MySQL :: MySQL 5.6 リファレンスマニュアル :: 2.3.5.6 MySQL ツールの PATH をカスタマイズする
環境変数にMySQL Serverのbinまでのpathを追加すると、どのディレクトリからでもmysql関連のコマンドが実行できるっぽいですね。
パスが通ってなければ、MySQL Serverのbinまでディレクトリを移動しておけば良いんでしょ?って思ってました。
わしもじゃ、わしもじゃ、みんな。
mysqldumpでアクセスが拒否されました。
コマンドプロンプトを起動して...mysqldumpを実行
cd C:\Program Files\MySQL\MySQL Server 5.7\bin mysqldump -u root -p sample > C:¥¥sample.sql
はい、エラー!
どうやら、コマンドプロンプトを『管理者権限』で実行すればいけるみたいです。
管理者権限でコマンドプロンプトを起動したらば、
cd C:\Program Files\MySQL\MySQL Server 5.7\bin mysqldump -u root -p sample > C:¥¥sample.sql
⇩ mysqldumpいろいろオプションがありそうですが、上のコマンドの意味です。
mysqldump -u [ユーザー名] -p [データベース名] > [出力するファイル名(パス)]
sqlファイルができています。
一時的にパスを通す方法
MySQL Serverのbinまでのパスを通せば、ディレクトリを移動せずにmysqldumpできます。
set PATH=%PATH%;C:\Program Files\MySQL\MySQL Server 5.7\bin
・MySQLで対象のデータベースをバックアップ!そしてリストアの行く末密かに暗示する人Honey!! - SUMMER_WARSの日記
アクセスが拒否されました。って?
アクセスが拒否されました。とかよく分からんですね~。
「アクセスが拒否されました」というメッセージの原因は、権限を超えた操作を行ったことによります。
権限には、管理者とユーザがあります。
通常、ユーザに操作が許されているのは、C:\Users\ユーザ名
以下の階層のフォルダです。Users フォルダがあるような Cドライブ直下のフォルダでの操作は許されていません。
なるほど、たしかに、普通にコマンドプロンプトを起動すると、カレントディレクトリは、「C:¥Users¥ユーザー名」になっていますね。
Cドライブ直下のProgram FilesフォルダにインストールされたMySQL(C:¥Program Files¥MySQL¥MySQL Server 5.7¥bin)を、ユーザーの権限のコマンドプロンプトで利用しようとして『アクセスが拒否されました』ってなってたわけですね。
う~ん、Windowsもムズイっすね。