"/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

관련 정보