์๋์ผ๋ก ์์ํ๋ mysql ๋ฐ๋ชฌํ๋ก์ธ์ค ๊ฐ์ ์ข ๋ฃ
MySQL 8 ๋ฒ์ (mysql-8.0.20-macos10.15)์ MacOS 10.14 (Mojave) ์ ์ค์นํ๋ค. ์ค์น๋ CE๋ฒ์ dmg ํ์ผ์ ๋ค์ด๋ฐ์์ ํ๋๋ฐ, ์ค์นํ ๋ ๋ง์ง๋ง์ ์ธ์คํจ ํ๋ก์ธ์ค ์ข ๋ฃ ํ ์๋์ผ๋ก MySQL์ ์์ํ ๊ฑด์ง์ ๋ํ ์ฒดํฌ๋ฅผ ํด์ ํ์ง ์๊ณ finishํ๊ณ , MAMP๊ฐ ์คํ๋์ง ์๊ธธ๋(ํ์ ์ฐฝ์ด ๋จ์ง ์๊ธธ๋) ์ ํ๋ฆฌ์ผ์ด์ ์์ ์๋์ผ๋ก ์คํ์ ์์ผฐ๋๋ฐ nginx ์๋ฒ๋ง ๋จ๊ณ mysql ์๋ฒ๊ฐ ๋จ์ง ์์๋ค.
์ค๋๋ง์ MAMP๋ฅผ ์ฐ๋ ค๋ค๋ณด๋ ์ ์๋จ๋์ง ์์ธ์ ์ฐพ๊ธฐ๊ฐ ํ๋ค์ด์ ์ ๋ฆฌํด๋ณธ๋ค.
์ผ๋จ mysql ์๋ฒ์ ๋ก๊ทธ๋ฅผ ํ์ธํด๋ณด๋ ค ํ๋ค. ๋ก๊ทธ ์์น๊ฐ ์ด๋์ธ์ง๋ฅผ ๋ชฐ๋ผ์ ๊ทธ๋ฅ find ๋ช
๋ น์ด๋ก mysql*.log ํ์ผ์ ์ฐพ์ผ๋ คํ๋๋ฐ ์๋์จ๋ค -_-; ๊ทธ๋์ ๊ตฌ๊ธ๋ง์ ํด๋ดค๋๋ .err ํ์ฅ์๋ก ๋๋๋ ํ์ผ์ด MAMP ์์ log ๋๋ ํ ๋ฆฌ ์์ ์์๊ณ (ํ์ผ๋ช
์ mysql_error_log.err ์ด๋ค) ํด๋น ํ์ผ์ ์ด์ด์ ์๋ฌ๋ฉ์์ง๋ฅผ ํ์ธํ๋๋ ํด๋น ํฌํธ๊ฐ ์ด๋ฏธ ์ฌ์ฉ์ค์ด๋๋ค. ์ค์? ๊ทธ๋ผ ์ค์นํ์ ์คํ์ด ๋๋ค๋ ์๊ธด๊ฐ??? ๊ทธ๋์ ํ๋ก์ธ์ค๋ฅผ ํ์ธํด๋ณด์๋ค.
ps -ef|grep mysql
๊ทธ๋ฌ๋๋ mysql ๋ฐ๋ชฌ์ด ์ด๋ฏธ ๋ ์๋ค. ์คํ์ํจ ์ ์ ๋ _mysql ์ด๋ผ๊ณ ๋์ด์์๊ณ ์ด ํ๋ก์ธ์ค๋ฅผ ๋๊ณ ๋ค์ MAMP๋ฅผ ์คํ์์ผ์ mysql ์๋ฒ๋ฅผ ๋์ฐ๋ ค๊ณ kill -9 PID๋ฅผ ์คํ์์ผฐ๋๋ฐ ํด๋น ํ๋ก์ธ์ค๋ ๊บผ์ก์ผ๋ ๋ค๋ฅธ PID๋ฅผ ๊ฐ๋ mysql๋ฐ๋ชฌ์ด ์๋์ผ๋ก ์คํ์ด ๋์ด์์๋ค. ใ กใ ก;
๋ญ์ง?? ์ ์ข๋น๋ค? ๋ค์ ์ด์ฌํ ๊ตฌ๊ธ๋ง์ ํด์ ๋์ผํ ๋ฌธ์ ์ ๋ํด ์ค๋ช ์ ์ ํด๋์ ๋ฏธ๋์ ํฌ์คํ ์ ํ๋ ์ฐพ์๋ค. ๋ฐ๋ก ์ฌ๊ธฐ์ด๋ค. ํด๋น ์ฌ์ดํธ์์๋ mysql-8.0.12-macos10.13 ๋ฒ์ ์ ๋ํ ์ค๋ช ์ด ์์๊ณ ๋ด๊ฐ ์ค์นํ ๋ฒ์ ์ mysql-8.0.20-macos10.15 ๋ฒ์ ์ด์๋ค. ์๋ง macOS ๋ฒ์ ๋ ๋ค๋ฅด์ง ์์๊น ์ถ์๋ฐ ์๋ฌดํผ ์ ์ฌ์ดํธ์ ์ค๋ช ๋๋ก ํด๋ ํด๋น ํ๋ก์ธ์ค๋ ์ฃฝ์๋ค ์ด์๋๊ณ ์ฃฝ์๋ค ์ด์๋๊ณ ๋ฅผ ๋ฐ๋ณตํ๋ค.
๊ทธ๋์ ์ข ๋ ๊ตฌ๊ธ๋ง์ ํ์ฌ MySQL ๊ณต์ ๋ฌธ์ ์ค MySQL launch daemon์ ๊ดํ ๋ฌธ์๋ฅผ ๋ณด๊ฒ ๋์๋ค. ํด๋น ๋ฌธ์์๋ ์๋์ ๊ฐ์ ๋ด์ฉ์ด ์์๋ค.
2.4.3 Installing and Using the MySQL Launch Daemon
macOS uses launch daemons to automatically start, stop, and manage processes
and applications such as MySQL.
By default, the installation package (DMG) on macOS installs a launchd file named
/Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist that contains a plist
definition similar to:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN"
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key> <string>com.oracle.oss.mysql.mysqld</string>
<key>ProcessType</key> <string>Interactive</string>
<key>Disabled</key> <false/>
<key>RunAtLoad</key> <true/>
<key>KeepAlive</key> <true/>
<key>SessionCreate</key> <true/>
<key>LaunchOnlyOnce</key> <false/>
<key>UserName</key> <string>_mysql</string>
<key>GroupName</key> <string>_mysql</string>
<key>ExitTimeOut</key> <integer>600</integer>
<key>Program</key> <string>/usr/local/mysql/bin/mysqld</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/mysql/bin/mysqld</string>
<string>--user=_mysql</string>
<string>--basedir=/usr/local/mysql</string>
<string>--datadir=/usr/local/mysql/data</string>
<string>--plugin-dir=/usr/local/mysql/lib/plugin</string>
<string>--log-error=/usr/local/mysql/data/mysqld.local.err</string>
<string>--pid-file=/usr/local/mysql/data/mysqld.local.pid</string>
<string>--keyring-file-data=/usr/local/mysql/keyring/keyring</string>
<string>--early-plugin-load=keyring_file=keyring_file.so</string>
</array>
<key>WorkingDirectory</key> <string>/usr/local/mysql</string>
</dict>
</plist>์ฆ, mysql์ ์ค์นํ๋ฉด /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist ํ์ผ์ ์์ ๊ฐ์ ์ค์ ๋ด์ฉ์ด ๋ค์ด์๋ค๋ ๋ด์ฉ์ด์๊ณ ์ค์ ํญ๋ชฉ๋ค ์ค์ ์๋์คํ๊ณผ ๊ด๋ จ๋ ํญ๋ชฉ์ด ์์๊น ์ถ์ด ์ญ์ฑ ํ์ด๋ณด๋ RunAtLoad ์ LaunchOnlyOnce ํญ๋ชฉ์ด ๋์ ๋์๋ค.
์ผ๋จ ๋๋ค ๊ธฐ๋ณธ๊ฐ๊ณผ ๋ฐ๋๋ก ์ค์ ํ์ฌ RunAtLoad ๊ฐ์ false๋ก, LaunchOnlyOnce์ ๊ฐ์ true๋ก ์์ ํด์ ์ ์ฅํ๊ณ ๋ค์ kill์ ํด๋ณด์๋ค. (์ด ๊ณผ์ ์์ ์ฌ๋ถํ
์ ํ์๋์ง ์ ํํ ๊ธฐ์ต์ด ๋์ง๋ ์๋๋ค;; ์ํ๋๊ฒ ๊ฐ์๋ฐ..^^; ) ๊ทธ๋ฌ๋๋ ๋์ด์ ์๋์ผ๋ก ์คํ๋์ง ์์๊ณ , MAMP๋ฅผ ์คํ์์ผ์ mysql ์๋ฒ๋ฅผ startํ๋ ์ด์ ์ ๋์ํ๋ ๊ฒ์ ํ์ธํ ์ ์์๋ค.
๋์์ด ๋์๋ค๋ฉด ๊ณต๊ฐ ๊พธ~~์ฑ~~
'๐ป Programming > ์นํ๋ก๊ทธ๋๋ฐ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| Eclipse + SpringBoot + JSP ๊ฐ๋ฐํ๊ฒฝ ์ธํ ํ๊ธฐ #2 (0) | 2020.07.23 |
|---|---|
| Eclipse + SpringBoot + JSP ๊ฐ๋ฐํ๊ฒฝ ์ธํ ํ๊ธฐ #1 (3) | 2020.07.22 |
| [MySQL] auto_increment ์ปฌ๋ผ ๊ฐ์ ์ธ์ ์ฆ๊ฐํ ๊น (0) | 2020.07.02 |
| TypeHandler๋ฅผ ์ด์ฉํ ๊ฐ์ฒด ๋ฆฌ์คํธ๋ฅผ text(varchar)๋ก ์ ์ฅํ๊ธฐ (1) | 2020.07.02 |
| [AWS] Beanstalk IP ์ฃผ์ ์กฐํ (0) | 2020.04.03 |