programing

MacOS나 BOOT에서 MariaDB(MySQL 등)를 시작하려면 어떻게 해야 합니까?

sourcejob 2023. 1. 27. 21:19
반응형

MacOS나 BOOT에서 MariaDB(MySQL 등)를 시작하려면 어떻게 해야 합니까?

HomeBrew를 사용하여 새로운 MacOS 10.11 서버 설정에 MariaDB를 설치했습니다.수동으로 기동하면, 서버는 정상적으로 동작합니다만, 기동시에 자동적으로 기동(로그인이 아님)할 수 없었습니다.나는 사용했다sudo brew services start mariadb/Library/LaunchDaemons에서 launchd 스크립트를 작성하지만 동작하지 않습니다.실행 중인 mariadb도 없고 mariadb 오류 로그도 없습니다.묵묵히 실패하는 것 같다.어딘가에 관련 로그가 있을 텐데 어디 있는지 모르겠어요.

그래도 되지 않자 먼저 실행시켜 본 자체 launchd 스크립트를 만들어 보았습니다.mysql.server start하지만 실패했습니다.전체 경로와 적절한 권한이 있지만 절대 작동하지 않습니다.

그런 다음 홈브루의 launchd plist에서 코드 일부를 복사하여 mysqld_safe를 실행하는 자체 plist를 만들었습니다.이것도 동작하지 않습니다.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE truncated for easier forum viewing>
<plist version="1.0">
<dict>
    <key>Label</key>
        <string>com.macfixer.mariadb</string>
    <key>ProgramArguments</key>
        <array>
            <string>/usr/local/opt/mariadb/bin/mysqld_safe</string>
            <string>--datadir=/usr/local/var/mysql</string>
        </array>
    <key>WorkingDirectory</key>
        <string>/usr/local/var</string>
        
    <key>Disabled</key>
        <false/>
    <key>RunAtLoad</key>
        <true/>
        
    <key>StandardOutPath</key>
        <string>/logs/mariadb.out.log</string>
    <key>StandardErrorPath</key>
        <string>/logs/mariadb.error.log</string>
</dict>
</plist>

위의 경우 mariadb 오류 로그 또는 StandardErrorPath 오류 로그에 흔적을 남기지 않습니다.그러나 일부 내용은 StandardOutPath 로그에 남습니다.마리아답이 시작되려고 하는 것 같은데, 그냥...그렇지 않아요.

180326 08:37:27 mysqld_safe '/usr/local/var/log/mysqld-error.log'에 로깅합니다.

180326 08:37:28 mysqld_safe /usr/local/var/mysql 데이터베이스를 사용하여 mysqld 데몬을 시작합니다.

하지만 다시 말하지만, 만약 내가 도망친다면mysql.server start컴퓨터가 부팅되고 로그인하면 MariaDB는 전혀 문제없이 바로 부팅됩니다.하지만 launchd에서 시작할 때는 조용히 즉시 종료되는 것처럼 보입니다.

이 성가신 문제는 매우 간단한 해답을 가지고 있는 것으로 밝혀졌습니다.

_mysql이 소유한 MariaDB 설치를 수행합니다.sudo chown -R _mysql: /usr/local/var/mysql

바로 그거야!그렇게 하면 완벽하게 동작합니다.

홈브루 설치 관리자가 설치한 소프트웨어의 권한을 처리하지 않는 이유는 무엇입니까?데이터베이스가 권한 문제가 있다고 오류 로그에 기록하지 않은 이유는 무엇입니까?launchd 스크립트에서 stderr 또는 stdout이 권한 문제 또는 어떤 문제가 있음을 암시하지 않은 이유는 무엇입니까?

...저는 모르겠어요.그냥 버그라고 하고 넘어가겠습니다.그러나 mariadb install 폴더에 대한 권한을 변경하면 문제가 완전히 해결되었습니다.그리고 그것은 큰 안도감이다.

언급URL : https://stackoverflow.com/questions/49333797/how-can-i-start-mariadb-like-mysql-on-macos-on-boot

반응형