์ํฉ
MySQL ๋๋ MariaDB์์ ๊ธฐ์กด์ ๋ค์ด์๋ ๋ฐ์ดํฐ๋ฅผ ๋ฐฑ์ ํ๊ฑฐ๋ ๋๊ตฐ๊ฐ์๊ฒ ์ ๋ฌํด์ฃผ๊ธฐ ์ํด์ ๋คํ๋ผ๋ ๊ฒ์ ํฉ๋๋ค. ์ด ๋คํ ํ์ผ์ ์ค์ ๋ก๋ ์ฟผ๋ฆฌ๋ฌธ์ด ๋ค์ด์์ต๋๋ค. ํ ์ด๋ธ์ ๋ค์ ์์ฑํ๊ณ ์์ ๋ค์ด์๋ ๋ฐ์ดํฐ๋ฅผ ๊ทธ๋๋ก ๋ค์ ๋ฃ์ด์ฃผ๋ ์ฟผ๋ฆฌ๋ฌธ์ ๋๋ค.
์๋ฒ๋ฅผ ๊ด๋ฆฌํ๋ ์ฌ๋ ๊ทธ๋ฆฌ๊ณ DB๋ฅผ ๊ด๋ฆฌํ๋ ์ฌ๋์ด๋ผ๋ฉด ๋คํ๋ฅผ ํ๊ณ ๋ค์ ๋ฐ์ด๋ฃ๋๊ฒ์ ์ต์ ํ๋ฒ์ฏค์ ๊ฒฝํ์ ํ์ค ์ ์์ต๋๋ค.
๋คํ๋ฅผ ํ๊ณ , ๋ฐ์ด๋ฃ๋ ๊ณผ์ ์๋ ํด๋น ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ๊ทผํ ์ ์๋ ๊ถํ์ ๊ฐ์ง ๊ณ์ ์ด ํ์ํฉ๋๋ค.
์ด ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ณ์ ์ ๋น๋ฐ๋ฒํธ์ ๋ณด์์ ์ ๊ฒฝ์จ์ ํน์๋ฌธ์๊ฐ ํฌํจ๋์ด ์์ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ฉด ์๋์ ๊ฐ์ด ์ผ๋ฐ์ ์ธ ๋ก๊ทธ์ธ ๋ฐฉ์์ผ๋ก๋ ์ ์ํ ์ ์์ต๋๋ค.
$ mysqldump -u username -p abcd!@#$ --all-databases > /backup/backup.sql
-bash: !@#$: event not found
username์ด๋ผ๋ DB์ฌ์ฉ์๊ฐ ์ ๊ทผ๊ถํ์ ๊ฐ์ง ๋ชจ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋คํํ๋ ๋ช ๋ น์ด. ์๋ฌ๊ฐ ๋ฐ์ํ๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
ํด๊ฒฐ
๊ธฐ๋ณธ์ ์ผ๋ก Linux ์๋ฒ๋ @#$์ ๊ฐ์ ํน์๋ฌธ์ ๊ธฐํธ๊ฐ ์์ฝ์ด๋ก ์ฌ์ฉ๋๊ธฐ ๋๋ฌธ์ ์ฆ, ์ด๋ฏธ ์ฌ์ฉ๋ ๊ณณ์ด ์ง์ ๋์ด ์๊ธฐ ๋๋ฌธ์ ์์ ๋ช ๋ น์ด ์ฒ๋ผ ์ฌ์ฉํ๊ฒ ๋๋ฉด ์๋ฑํ๊ฒ ์ธ์ํ๊ฒ ๋ฉ๋๋ค. ๋ฐ๋ผ์ ์๋์ ๊ฐ์ด ์์๋ฐ์ดํ(')๋ก ๋ฌถ์ด์ ๋ณ์ํํ์ฌ ์ฌ์ฉํด์ผ ํฉ๋๋ค.
export db_password='abcd!@#$'
mysqldump -u username -p$db_password --all-databases > /backup/backup.sql
๋ค๋ฅธ ํด๊ฒฐ ๋ฐฉ๋ฒ
mysql 5.6์ธ๊ฐ 5.8 ๋ฒ์ ์ด์์ mysql_config_editor๋ฅผ ์ด์ฉํด ์ค์ ํ๋ login_path๋ฅผ ์ด์ฉํ๋ ๋ฐฉ๋ฒ๋ ์์ต๋๋ค.
์ ๋ฆฌ๋ ๋ธ๋ก๊ทธ ๋งํฌ : https://www.irgroup.org/posts/mysql-login-path/
์ฐธ๊ณ
https://it-sunny-333.tistory.com/82
https://walkingfox.tistory.com/116