"/private/etc/my.cnf" E212: 書き込み用にファイルを開けません。

"/private/etc/my.cnf" E212: 書き込み用にファイルを開けません。

socket=/tmp/mysql.sockこれをmy.cnfファイルに追加したいと思います。私のステップ:

1)

vi /etc/my.cnf

2) my.cnf に次の行を追加します。

socket=/tmp/mysql.sock

3)しかし、出るとき:wq

この問題が発生します。

"/private/etc/my.cnf" E212: 書き込み用にファイルを開けません。


ここに画像の説明を入力してください。

その後、Enterキーを押すとmy.cnfの内容に戻ります。


-1を追加

$ id 

AircraftdeMacBook-Pro:~ ldl$ id uid=501(ldl) gid=20(staff) groups=20(staff),701(com.apple.sharepoint.group.1),12(everyone),61(localaccounts), 79(_appserverusr)、80(admin)、81(_appserveradm)、98(_lpadmin)、33(_appstore)、100(_lpoperator)、204(_developer)、395(com.apple.access_ftp)、398(com.apple)。 access_screensharing),399(com.apple.access_ssh),702(com.apple.sharepoint.group.2)

追加-2

$ ls -l /private/etc/my.cnf

ls: /private/etc/my.cnf: そのファイルやディレクトリはありません。


追加-3

私のmysql/support-files

答え1

上記のファイルへの書き込み権限がないようです。確認するには:

ls -l /private/etc/my.cnf

どのユーザーを使用しているかを確認するには、id次のコマンドを使用します。あなたは、ファイルの所有者であるか、またはファイルに対する書き込み権限(ls出力のw文字)を持つグループに属する必要があります。

もちろん、このファイルに書き込む権限をアップグレードできる必要があります。ルートとして使用するかsudoログインします。

編集1:

あ、OSXを使っていますね:)によるとOSXのMySQL設定/etc/my.cnf ファイルを生成する必要があります。これを行うには使用する必要がありますsudo。だからsudo vi /etc/my.cnf。このファイルが存在しない場合は、上記のリンクに記載されているサンプル構成ファイルをコピーして編集することをお勧めします。

sudo cp /usr/local/mysql/support-files/my-huge.cnf /etc/my.cnf
sudo vi /etc/my.cnf

Sudoは(少なくともオンラインヘルプに従って)管理者パスワードを要求します。このアカウントにはパスワードが必要です。

編集2:

my-default.cnfファイルは問題ないようです。 /etc/my.cnfにコピーして編集を開始します。

sudo cp my-default.cnf /etc/my.cnf

関連情報