MySQL 서버 를 어떻게 시작 하 는 지 토론 하기 전에 어떤 사용자 로 MySQL 서버 를 실행 해 야 하 는 지 고려 해 봅 시다.서버 는 수 동 또는 자동 으로 시작 할 수 있 습 니 다.수 동 으로 시작 하면 서버 는 유 닉 스(Linux)에 로그 인 한 사용자 로 시작 합 니 다.즉,paul 로 유 닉 스 에 로그 인하 고 서버 를 시작 하면 paul 로 실 행 됩 니 다.su 명령 으로 루트 로 전환 하고 서버 를 시작 하면 루트 로 실 행 됩 니 다.그러나 대부분의 경우 서버 를 수 동 으로 시작 하고 싶 지 않 을 수도 있 습 니 다.MySQL 서버 를 시스템 안내 시 자동 으로 시작 하도록 설정 할 수도 있 습 니 다.표준 안내 과정의 일부분 으로 유 닉 스 에서 이 안내 과정 은 시스템 의 유 닉 스 사용자 루트 에 의 해 실행 되 고 이 과정 에서 실행 되 는 모든 프로 세 스 는 루트 권한 으로 실 행 됩 니 다. MySQL 서버 시작 과정의 두 가지 목 표를 기억 해 야 합 니 다. 서버 를 루트 가 아 닌 사용자 로 실행 시 키 고 싶 습 니 다.일반적으로 루트 권한 이 필요 하지 않 고 MySQL 이 필요 하지 않 은 프로 세 스 를 실행 하 는 능력 을 제한 하고 싶 습 니 다. 서버 를 항상 같은 사용자 로 실행 시 키 고 싶 습 니 다.이 때 는 한 사용자 가 다른 사용자 로 서버 를 실행 하 는 것 이 불편 합 니 다.이 로 인해 파일 과 디 렉 터 리 에 서로 다른 주 데이터 디 렉 터 리 를 가지 고 생 성 되 고 서버 가 데이터베이스 나 표 에 접근 하지 못 할 수도 있 습 니 다.이것 은 어느 사용자 로 실행 하 는 지 에 달 려 있 습 니 다.같은 사용자 로 서버 를 통일 적 으로 실행 하 는 것 은 이 문 제 를 피 하 는 것 이다. 일반 비 특권 사용자 가 서버 를 실행 하려 면 다음 절차 에 따라: 서버 를 실행 할 사용 자 를 선택 하 십시오.my sqld 는 모든 사용자 로 실행 할 수 있 습 니 다.그러나 개념 적 으로 명확 한 것 은 MySQL 작업 을 위해 단독 사용 자 를 만 드 는 것 이다.당신 도 MySQL 을 위해 특별히 사용자 그룹 을 선택 할 수 있 습 니 다.본 고 는 my sqladm 과 my sqlgrp 를 각각 사용자 이름과 사용자 그룹 이름 으로 사용 합 니 다. 만약 당신 이 이미 자신의 계 정 아래 에 MySQL 을 설치 하고 시스템 상의 특수 관리 권한 이 없다 면,당신 은 자신의 사용자 ID 아래 에서 서버 를 실행 할 수 있 습 니 다.이 경우 my sqladm 과 my sqlgrp 대신 로그 인 이름과 사용자 그룹 을 사용 하 십시오. 하면,만약,만약... Linux 에 rpm 파일 로 MySQL 을 설치 합 니 다.이 설 치 는 mysql 이라는 계 정 을 자동 으로 만 들 고 mysql 대신 이 계 정 을 사용 합 니 다. 필요 하 다 면 시스템 의 일반적인 사용 자 를 만 드 는 과정 으로 서버 계 정 을 만 들 고 루트 로 해 야 합 니 다. 서버 가 실행 중이 면 중지 합 니 다. 데이터 디 렉 터 리 와 모든 하위 디 렉 터 리 와 파일 의 속 주 를 수정 하여 my sqladm 사용자 가 가지 고 있 습 니 다.예 를 들 어 데이터 디 렉 터 리 가/usr/local/var 이면 my sqladm 의 속 주 를 설정 할 수 있 습 니 다(루트 로 이 명령 을 실행 해 야 합 니 다). #cd /usr/local/var #chown -R mysqladm.mysqlgrp 데이터 디 렉 터 리 와 모든 하위 디 렉 터 리 와 파일 의 권한 을 수정 하여 my sqladm 사용자 만 접근 할 수 있 도록 합 니 다.데이터 디 렉 터 리 가/usr/local/var 이면 my sqladm 이 가지 고 있 는 모든 것 을 설정 할 수 있 습 니 다. # cd /usr/local/var # chmod -R go-rwx 데이터 디 렉 터 리 와 내용 의 소유자 와 모드 를 설정 할 때 기호 연결 에 주의 하 십시오.그것들 을 따라 가리 키 는 파일 이나 디 렉 터 리 의 소유자 와 모드 를 바 꿔 야 합 니 다.파일 을 연결 하 는 디 렉 터 리 가 당신 에 게 속 하지 않 는 곳 에 있다 면 귀 찮 을 것 입 니 다.루트 신분 이 필요 할 수도 있 습 니 다. 이 과정 을 마 친 후에 항상 my sqladm 또는 root 로 로그 인 할 때 서버 를 시작 해 야 합 니 다.후자 에 서 는 지정 한--user=my sqladm 옵션 을 확인 하여 서버 가 사용자 ID 를 my sqladm 으로 전환 할 수 있 도록 해 야 합 니 다.(시스템 시작 과정 에 도 적 용 됩 니 다) --user 옵션 은 MySQL 에 있 습 니 다. 3.22 에 도입 되 었 습 니 다.오래된 버 전이 있 으 면 su 명령 을 사용 하여 시스템 이 루트 로 실 행 될 때 특정한 사용자 에서 서버 를 실행 하 는 것 을 알려 줄 수 있 습 니 다. 서버 시작 방법 서버 를 실행 할 계 정 을 확인 한 후에 서버 를 시작 하 는 방법 을 선택 할 수 있 습 니 다.명령 행 에서 수 동 으로 실행 하거나 시스템 안내 과정 에서 자동 으로 실행 할 수 있 습 니 다.서버 시작 에 대한 세 가지 주요 방법: my sqld 를 직접 호출 합 니 다. 이것 은 가장 자주 사용 되 지 않 는 방법 일 수 있 으 므 로 많이 사용 하지 말 것 을 건의 하기 때문에 본 고 는 상세 하 게 소개 하지 않 는 다. safe 호출mysqld 스 크 립 트. safe_my sqld 는 서버 프로그램 과 데이터 디 렉 터 리 의 위 치 를 확인 하려 고 합 니 다.그리고 이 값 을 반영 하 는 옵션 으로 서버 를 호출 합 니 다.safe_my sqld 는 표준 오류 장 치 를 서버 에서 데이터 디 렉 터 리 의 오류 파일 로 다시 찾 아 기록 합 니 다.서버 시작 후 safemy sqld 도 그것 을 감시 하고 죽 으 면 다시 시작 합 니 다.safe_my sqld 는 BSD 스타일 의 유 닉 스 시스템 에 자주 사용 된다. 루트 또는 시스템 안내 기간 에 sqfe 를 시작 하면my sqld,오류 로 그 는 루트 가 가지 고 있 습 니 다.나중에 비 특권 사용자 로 safe 를 호출 하려 고 할 수도 있 습 니 다.my sqld 시"permission" denied(권한 거부)오류 입 니 다.오류 로 그 를 삭제 하고 다시 시도 하 십시오. mysql.server 스 크 립 트 를 호출 합 니 다. 이 스 크 립 트 는 System 에 의도 적 으로 사 용 됩 니 다. V 의 시작 과 정지 시스템 의 safemy sqld.my sql.server 는 서버 를 시작 합 니 다.이 시스템 은 기계 가 지정 한 실행 단계 에 들 어가 거나 종료 할 때 점 용 된 스 크 립 트 디 렉 터 리 를 포함 합 니 다.서버 를 시작 하고 싶 은 지 정지 하고 싶 은 지 start 나 stop 매개 변수 로 표시 할 수 있 습 니 다. safe_mysqld 스 크 립 트 는 MySQL 설치 디 렉 터 리 의 bin 디 렉 터 리 에 설치 되 어 있 거나 MySQL 소스 코드 가 배 포 된 scripts 디 렉 터 리 에서 찾 을 수 있 습 니 다.mysql.server 스 크 립 트 는 MySQL 설치 디 렉 터 리 의 share/mysql 디 렉 터 리 에 설치 되 어 있 거나 MySQL 소스 코드 에 배포 할 수 있 는 슈퍼 portfiles 디 렉 터 리 에서 찾 았 습 니 다.사용 하려 면 적당 한 디 렉 터 리 에 복사 해 야 합 니 다. BSD 스타일 의 시스템(FreeBSD,OpenBSD 등)은 보통/etc 디 렉 터 리 에서 몇 개의 파일 이 안내 할 때 서 비 스 를 초기 화 합 니 다.이 파일 들 은'rc'로 시작 하 는 이름 이 있 고'rc.local'이라는 파일(또는 유사 한 것)이 로 컬 설치 서 비 스 를 시작 하 는 데 사 용 될 수 있 습 니 다.이러한 시스템 에 서 는 다음 과 같은 줄 을 rc.local 파일 에 추가 하여 서버 를 시작 할 수 있 습 니 다(만약 safemy sqld 디 렉 터 리 는 시스템 에 따라 다 릅 니 다.수정 하면 됩 니 다): if [ -x /usr/local/bin/safe_mysqld ]; then /usr/local/bin/safe_mysqld & fi System V 스타일 의 시스템 입 니 다.my sql.server 를/etc 에서 적당 한 시작 디 렉 터 리 에 놓 고 설치 할 수 있 습 니 다.Linux 를 실행 하고 RPM 파일 에서 MySQL 을 설치 하면 스 크 립 트 를 홈 시작 디 렉 터 리 에 설치 하고 연결 을 적당 한 실행 단계 디 렉 터 리 에 놓 습 니 다.스 크 립 트 를 루트 로 만 시작 할 수 있 습 니 다. 파일 을 시작 하 는 디 렉 터 리 레이아웃 이 시스템 마다 다 르 기 때문에 시스템 이 어떻게 구성 되 는 지 확인 해 야 합 니 다.Linux PPC 에서 디 렉 터 리 는/etc/rc.d 와/etc/rc.d/rc3.d 입 니 다.이렇게 스 크 립 트 를 설치 할 수 있 습 니 다. #cp mysql.server /etc/rc.d/init.d #cd /etc/init.d #chmod 500 mysql.server #cd /etc/rc.d/rc3.d #ln -s ../init.d/mysql.server S99mysql solaris 에서 메 인 스 크 립 트 디 렉 터 리 는/etc/init.d 이 고 실행 단계 디 렉 터 리 는/etc/rd2.d 이기 때문에 명령 은 이렇게 보 입 니 다. #cp mysql.server /etc/rc.d/init.d #cd /etc/init.d #chmod 500 mysql.server #cd /etc/rc2.d #ln -s ../init.d/mysql.server S99mysql 시스템 이 시 작 될 때 S99my sql 스 크 립 트 는 start 매개 변수 로 자동 으로 호출 됩 니 다.chkconfig 명령(Linux 에 있 음)이 있다 면 위 와 같이 위 명령 을 수 동 으로 실행 하지 않 고 mysql.server 스 크 립 트 를 설치 하 는 데 도움 을 줄 수 있 습 니 다. 시작 옵션 지정 서버 가 시 작 될 때 추가 시작 옵션 을 지정 하려 면 두 가지 방법 이 있 습 니 다.사용 하 는 시작 스 크 립 트 를 수정 할 수 있 습 니 다(safemy sqld 또는 my sql.server)는 서버 를 호출 하 는 줄 에 직접 옵션 을 지정 하거나 옵션 파일 에 옵션 을 지정 합 니 다.전역 옵션 파일 에 옵션 을 지정 할 수 있다 면/etc/my.cnf(Unix)나 c:my.cnf(Windows)에 있 는 것 을 권장 합 니 다. 어떤 종류의 정 보 는 서버 옵션 으로 지정 할 수 없습니다.이것 에 대해 당신 은 safe 를 수정 해 야 할 수도 있 습 니 다.mysqld。예 를 들 어 서버 가 로 컬 시간 대 를 정확하게 선택 하지 못 하고 GMT 로 시간 값 을 되 돌려 주지 못 하면 TZ 환경 변 수 를 설정 하여 지 시 를 할 수 있 습 니 다.하면,만약,만약...my sqld 또는 my sql.server 가 서버 를 시작 합 니 다.시간 대 설정 을 safe 에 추가 할 수 있 습 니 다.mysqld。서버 를 시작 할 줄 을 찾 고 이 줄 앞 에 다음 명령 을 추가 합 니 다: TZ=US/Central export TZ 위 명령 의 문법 은 Solaris 입 니 다.다른 시스템 문법 이 다 를 수 있 으 니 관련 매 뉴 얼 을 찾 아 보 세 요.시작 스 크 립 트 를 수정 한 것 이 확실 하 다 면 다음 에 MySQL 을 설치 할 때(예 를 들 어 새 버 전 으로 업그레이드)수정 사항 이 사라 집 니 다.먼저 다른 곳 에서 시작 스 크 립 트 를 복사 하지 않 는 한.새 버 전 을 설치 한 후,새 버 전의 스 크 립 트 를 비교 해서,당신 이 어떤 변 화 를 재건 해 야 하 는 지 보 세 요. 시작 할 때 시 계 를 검사 하 세 요. 서버 가 시스템 가 이 드 를 시작 할 때 시작 하도록 설정 하 는 것 외 에 my isamchk 와 isamchk 스 크 립 트 를 설치 하여 서버 가 시작 되 기 전에 시 계 를 검사 해 야 할 수도 있 습 니 다.충돌 후에 다시 시작 할 수 있 습 니 다.시계 가 손상 되 었 을 수도 있 습 니 다.시작 하기 전에 문 제 를 발견 하 는 좋 은 방법 입 니 다.