2011-09-06 3 views
1

MAMP 패키지에 포함 된 SQL 서버로 일부 작업을하고 있습니다. 부팅 할 때마다 SQL 서버가 자동으로 시작되도록 컴퓨터를 설정하고 싶습니다. 누구든지 이것이 일어날 수있는 가장 간단한 방법을 알고 있습니까?시스템 시작시 MAMP sql 서버를 자동으로 시작하는 방법

많은, 많은 감사,

D.

UPDATE

내가 Macmade가 제시 한 LaunchDaemon 파일을 사용하려고, 아래, 나는 다음과 같은 오류를 얻을 :

110906 19:52:05 mysqld_safe Starting mysqld daemon with databases from /Applications/MAMP/db/mysql 
110906 19:52:05 [Warning] Setting lower_case_table_names=2 because file system for /Applications/MAMP/db/mysql/ is case in$ 
110906 19:52:05 [Note] Plugin 'FEDERATED' is disabled. 
^G/Applications/MAMP/Library/bin/mysqld: Can't find file: './mysql/plugin.frm' (errno: 13) 
110906 19:52:05 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it. 
110906 19:52:05 InnoDB: The InnoDB memory heap is disabled 
110906 19:52:05 InnoDB: Mutexes and rw_locks use GCC atomic builtins 
110906 19:52:05 InnoDB: Compressed tables use zlib 1.2.3 
110906 19:52:05 InnoDB: Initializing buffer pool, size = 128.0M 
110906 19:52:05 InnoDB: Completed initialization of buffer pool 
110906 19:52:05 InnoDB: Operating system error number 13 in a file operation. 
InnoDB: The error means mysqld does not have the access rights to 
InnoDB: the directory. 
InnoDB: File name ./ibdata1 
InnoDB: File operation call: 'open'. 
InnoDB: Cannot continue operation. 
110906 19:52:05 mysqld_safe mysqld from pid file /Applications/MAMP/db/mysql/Doyuen-Kos-Mac-Pro.local.pid ended 

을 이것이 작동하지 않으면 MAMP 디렉토리 중 일부를보고 startMysql.sh라는 스크립트를 발견했습니다. 명령 줄에서이 명령을 실행하면 SQL Server가 시작됩니다. 완전한. 작동하지 않을 가능성이있는 경우 LaunchDaemon 파일에도이 파일을 던져 보았습니다.

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 
<plist version="1.0"> 
<dict> 
    <key>KeepAlive</key> 
    <false/> 
    <key>Label</key> 
    <string>mysql</string> 
    <key>ProgramArguments</key> 
    <array> 
     <string>/Applications/MAMP/bin/start.sh</string> 
    </array> 
    <key>RunAtLoad</key> 
    <true/> 
</dict> 
</plist> 

이것은 작동하지 않았습니다. 또한, 이상하게도 콘솔 앱에 어떤 종류의 메시지도 생성하지 않는 것 같습니다.

나는 여전히 붙어 있습니다. 누구든지 아이디어가 있습니까?

답변

-1

. 유료 MAMP 버전 인 MAMP Pro에는 시작시 SQL 서버를 시작하도록 시스템을 구성하는 간단한 1 클릭 기능이 있습니다. 그래서 유료 버전을 사기 위해 ~ $ 50 달러를 포격하는 것이이 방법을 얻는 한 가지 방법입니다. 그것은 내가 바라는 해결책이 아니지만 일을 마쳤습니다.

2

LaunchDaemon 파일이 필요할 수 있습니다.

whatever.plist이라는 파일을/Library/LaunchDaemons/디렉토리에 만들고 다음 내용을 입력하십시오. 권한이있을 필요가

참고 : 루트 : 휠/난 그냥이 문제에 대한 하나의 가능한 해결책을 알아 냈 644

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 
<plist version="1.0"> 
<dict> 
    <key>KeepAlive</key> 
    <false/> 
    <key>Label</key> 
    <string>mysql</string> 
    <key>ProgramArguments</key> 
    <array> 
     <string>/path/to/mysql/bin/mysqld_safe</string> 
     <string>--user=_mysql</string> 
    </array> 
    <key>RunAtLoad</key> 
    <true/> 
</dict> 
</plist> 
+1

Macmade, thanks * very * much for the answer. 불행하게도 이것은 효과가 없습니다 (위의 편집 참조). 다른 아이디어? –

3

열기 텍스트 편집기 또는 Mac에서 일반 텍스트 편집기,

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 
<plist version="1.0"> 
    <dict> 
    <key>Label</key> 
    <string>info.mamp.start.mysql</string> 
    <key>ProgramArguments</key> 
    <array> 
     <string>/Applications/MAMP/Library/bin/mysqld_safe</string> 
     <string>--port=3306</string> 
     <string>--socket=/Applications/MAMP/tmp/mysql/mysql.sock</string> 
     <string>--lower_case_table_names=0</string> 
     <string>--pid-file=/Applications/MAMP/tmp/mysql/mysql.pid</string> 
     <string>--log-error=/Applications/MAMP/logs/mysql_error_log</string> 
    </array> 
    <key>RunAtLoad</key> 
    <true/> 
    <key>UserName</key> 
    <string>YOUR_USERNAME</string> 
    </dict> 
</plist> 

것은 "_ 이름을 대체해야합니다 그리고 MySQL을위한 또 다른 파일을 만들고 그것을

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 
<plist version="1.0"> 
    <dict> 
    <key>Label</key> 
    <string>info.mamp.start.apache</string> 
    <key>ProgramArguments</key> 
    <array> 
     <string>/Applications/MAMP/Library/bin/apachectl</string> 
     <string>start</string> 
    </array> 
    <key>RunAtLoad</key> 
    <true/> 
    </dict> 
</plist> 

아파치

를 들어이 붙여 넣기 "귀하의 계정에 대한 사용자 이름.

/Library/LaunchDaemons/info.mamp.start.apache.plist 및 /Library/LaunchDaemons/info.mamp.start.mysql.plist로이 파일을 저장하거나 파일을 이동하십시오.

폴더 타입이있다/도서관/LaunchDaemons/

열기 터미널을 저장

CD/라이브러리/LaunchDaemons/ sudo는 대한 Chown 루트 : 휠 info.mamp.start.apache.plist sudo chown root : wheel info.mamp.start.mysql.plist

완료. 다시 시작하십시오 Mac

참조 : http://stringfoo.com/2008/08/25/tutorial-launching-mamp-silently-on-startup/

+0

이 방법은 훌륭하게 작동합니다. – tonix

관련 문제