반응형
우분투 24.04에서 MySQL 8.4 LTS 바이너리(Binary) 방식으로 설치하는 방법
테스트 환경
운영체제 정보
$ lsb_release -d
Description: Ubuntu 24.04.1 LTS
$ uname -m
aarch64
1. 기본 패키지 설치
MySQL 실행 및 압축 해제를 위한 필수 패키지를 설치합니다.
apt update
apt install -y lsb-release wget gzip xz-utils
2. MySQL 패키지 설치
apt install -y libaio1t64 libnuma1 libncurses6
libaio 심볼릭 링크 생성
우분투 24.04에서는 libaio.so.1 대신 libaio.so.1t64 형태로 제공되므로 심볼릭 링크를 생성해야 합니다.
ARM64(aarch64)
ln -s /usr/lib/aarch64-linux-gnu/libaio.so.1t64 \
/usr/lib/aarch64-linux-gnu/libaio.so.1
x86_64
더보기
---
apt install -y libaio1
ln -s /usr/lib/x86_64-linux-gnu/libaio.so.1t64 \
/usr/lib/x86_64-linux-gnu/libaio.so.1
CPU 아키텍처에 맞는 경로만 적용하면 됩니다.
---
2. MySQL 계정 및 그룹 생성
MySQL 전용 계정 및 그룹을 생성합니다.
groupadd -g 28 mysql
useradd -m -c "MySQL Server" -d /usr/local/mysql -s /usr/sbin/nologin -u 28 -g 28 mysql
3. MySQL 바이너리 다운로드
소스 디렉터리로 이동 후 MySQL 8.4 LTS 바이너리를 다운로드합니다.
cd /usr/local/src/
wget https://dev.mysql.com/get/Downloads/MySQL-8.4/mysql-8.4.9-linux-glibc2.28-aarch64.tar.xz
ARM64(aarch64) 환경 기준 바이너리입니다.
4. MySQL 설치 디렉터리 생성 및 압축 해제
mkdir -p /usr/local/mysql
tar xf mysql-8.4.9-linux-glibc2.28-aarch64.tar.xz -C /usr/local/mysql --strip-components=1
5. 데이터 및 로그 디렉터리 생성
mkdir -p /usr/local/mysql/{data,log}
chown -R mysql:mysql /usr/local/mysql
6. MySQL 설정 파일 생성
/usr/local/mysql/my.cnf 파일을 생성합니다.
cat << 'EOF' > /usr/local/mysql/my.cnf
[mysqld]
# MySQL 실행 계정
user = mysql
# 기본 디렉터리
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
# 소켓 및 PID
socket = /tmp/mysql.sock
pid-file = /usr/local/mysql/data/mysqld.pid
# 에러 로그
log-error = /usr/local/mysql/log/error.log
# MySQL 8.4 인증 정책
authentication_policy = *
[client]
socket = /tmp/mysql.sock
EOF
728x90
7. MySQL 데이터베이스 초기화
초기 데이터베이스를 생성합니다.
/usr/local/mysql/bin/mysqld \
--defaults-file=/usr/local/mysql/my.cnf \
--initialize-insecure \
--user=mysql
옵션 설명
- --initialize-insecure : root 비밀번호 없이 초기화
- --user=mysql : mysql 계정으로 실행
8. MySQL 서버 실행
/usr/local/mysql/bin/mysqld \
--defaults-file=/usr/local/mysql/my.cnf \
--user=mysql &
정상 실행 여부 확인
ps -ef | grep -v grep | grep mysqld
mysql 3235 1 0 13:55 pts/0 00:00:01 /usr/local/mysql/bin/mysqld --defaults-file=/usr/local/mysql/my.cnf --user=mysql
9. MySQL 접속
/usr/local/mysql/bin/mysql -u root -S /tmp/mysql.sock
10. root 비밀번호 설정
초기 설치 후 root 비밀번호를 설정합니다.
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPassword123!';
FLUSH PRIVILEGES;
EXIT;
11. 비밀번호 적용 후 재접속
/usr/local/mysql/bin/mysql -u root -p
12. MySQL 종료
정상 종료 방법
kill $(cat /usr/local/mysql/data/mysqld.pid) 2>/dev/null
종료 여부 확인
ps -ef | grep -v grep | grep mysqld
13. 트러블슈팅
데이터 디렉터리 초기화 오류 발생 시
- 초기화 실패 또는 권한 오류가 발생한 경우 아래 절차로 재초기화합니다.
rm -rf /usr/local/mysql/data/*
chown -R mysql:mysql /usr/local/mysql
이후 다시 초기화 수행
/usr/local/mysql/bin/mysqld \
--defaults-file=/usr/local/mysql/my.cnf \
--initialize-insecure \
--user=mysql
14. PATH 환경 변수 등록 (선택)
자주 사용하는 경우 PATH 등록을 권장합니다.
cat << 'EOF' > /etc/profile.d/mysql.sh
export PATH=/usr/local/mysql/bin:$PATH
EOF
source /etc/profile.d/mysql.sh
적용 확인
mysql --version
mysql Ver 8.4.9 for Linux on aarch64 (MySQL Community Server - GPL)
15. 설치 확인
mysql -u root -p -e "SHOW DATABASES;"
Enter password:
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
정상적으로 데이터베이스 목록이 출력되면 설치가 완료된 것입니다.
728x90
반응형
'리눅스' 카테고리의 다른 글
| 우분투 24.04에서 사용하는 systemd-resolved DNS 캐시 관리 방법 (0) | 2026.05.21 |
|---|---|
| 우분투 24.04 Stub Resolver 동작 및 설정 정리 (0) | 2026.05.21 |
| 리눅스 특정 TTY 세션 제외 후 전체 SSH 세션 종료 방법 (0) | 2026.05.13 |
| MySQL 프로세스를 강제 종료하지 않고 정상 종료하는 방법 (0) | 2026.05.12 |
| Linux Bash 명령어 이력을 Syslog로 중앙 수집하는 방법 (0) | 2026.05.11 |