Linux/mysql

[Linux ] - Rocky(CentOS) MySQL 5.x 수동 설치

aieo 2024. 5. 22. 16:10
반응형

Linux가 이제 CentOS로 안나오고 Rocky로 나온다고 함

그래서 최근에 설치한 Linux가 Rocky로 진행 해봄~

CentOS랑 같은거 같은데 아무튼 Linux는 나중에 자세히 보고

 

오늘은 MySQL 5.x 버전 수동 설치를 진행 해보겠습니다.

 

이제 MySQL 5.x 버전은 안나오고 설치도 안된다고 하긴 함... 

이전에 사용하던 버전이 5.x 여서 똑같이 했지만... 최신 8.x로 설치 하는거 추천함

 

일단 mysql 5.x 버전 설치 링크

https://dev.mysql.com/downloads/repo/yum/

 

MySQL :: Download MySQL Yum Repository

The world's most popular open source database Contact MySQL  |  Login  |  Register

dev.mysql.com

 

해당 url로 이동 하면 다운로드 페이지가 나옴

 

 

경로 확인 하고 버전에 맞춰서 검색 후 Linux로 찾은 다음에 

위에 빨간 박스 안에 있는거를 다운로드 하면 됨

 

이제 다운로드 한 파일을 Linux로 보내줘야 함

나는 FileZilla를 사용해서 STPF를 활용해서 windows 에 있는 파일을 Linux로 보내는걸 활용함

 

이제 Linux로 접속해서 보내진 파일을 새로 폴더 생성해서 거기로 보내줌

나 같은 경우는 mysql 폴더 생성함

# 폴더 생성할 곳으로 이동해서 mysql 폴더 생성
mkdir mysql

#filezilla로 이동시켜준 폴더로 가서 아까 다운로드 한 파일 mysql 폴더로 이동 시켜주기
mv mysql-5.7.39-linux-glibc2.12-x86_64.tar.gz  /mysql

cd /mysql
# mysql로 폴더로 이동

# tar.gz 파일 풀어주기
tar -zxvf mysql-5.7.39-linux-glibc2.12-x86_64.tar.gz 

# 아래로 쫘라락 풀림

 

 

다 풀리면 폴더가 생성됨

# 다운된 폴더 확인
ls -al

# 생성된 폴더를 /usr/local/mysql 로 이동 mysql로 이름 변경
mv mysql-5.7.39-linux-glibc2.12-x86_64 /usr/local/mysql

# /usr/local/mysql로 가서 보기

cd /usr/local/ 
# 이동하면 mysql이 폴더가 생서되어 있음
cd /mysql 로 하면 폴더로 들어가짐

# 추가로 mysql 디렉토리 소유자 권한 수정 해줌
sudo groupadd mysql
sudo useradd -r g mysql -s /bin/galse mysql
sudo chown -R mysql:mysql /usr/local/mysql/

 

 

MySQL 초기화 

  •  MySql 데이터 디렉토리르 초기화 시키고, 이 과정에서 시스템 테이블이 생성됨!
  • root 사용자의 초기 비밀번호가 생성됨, mysql 사용자 권한으로 해야됨
cd /usr/local/mysql
sudo bin/mysql --initialize --user=mysql

 

에러날수도 있음... 추가 설정이 필요한게 있었음

find / -name *ncurses*

# 검색하면 여러개 나옴

 

일단 있으면 된거 같음

# 명령어 입력

sudo ln -s /usr/lib64/libncursesw.so.6.2 /usr/lib64/libncurses.so.5
sudo ln -s /usr/lib64/libncursesw.so.6.2 /usr/lib64/libtinfo.so.5

 

다시 오류 났던거 실행

sudo bin/mysqld --initialize --user=mysql

 

실행 되면 밑으로 뭐가 나옴

 

중요한건 root@localhost: #jMe9gziaPVU가 중요 mysql의 root 계정에 대한 임시 암호임

 

mysql PATH 설정 해주고

 

나는 뭔가 에러 나서 다른 방법으로 설정

vi ~/.bashrc
# 위에 경로로 접속 해서 아래 코드 추가

#############
PATH="/usr/local/mysql/bin:$PATH"
# 추가 해줌 오타 주의

 

잘 설치가 됐고 설정 완료 되면 mysql 접속 가능할거임

 

mysql -u root -p
Enter password : 

# 입력 했지만 실패.. 확인해보니 mysql service가 안켜져 있음..
# 수동 설치를 하여.. service가 없다고 함..

systemctl stauts mysql
#역시 안나옴..

systemcat start mysql
#안나옴

 

에러 파악 후 mysql.service 만들어주기

간단하게 구글링 하고 바로 복붙...

vi /etc/systemd/system/mysql.service
# 새로운 파일 생성

# 안에 내용 입력

[Unit]
Description=MySQL Server
After=network.target
After=syslog.target

[Install]
WantedBy=multi-user.target

[Service]
User=mysql
Group=mysql
# 여기서 ExecStart 경로는 실제 Mysql 실행 파일 경로
# 파일 밖에서 경로 찾아야 함
# 명령어 find / -name mysqld
# defaults는 my.cnf 파일의 경로
# 명령어 find / -name my.cnf
# 경로 나옴 맞춰서 작성
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000


# esc 누르고 
# :wq로 저장하고 나오기

 

데몬 재시작

sudo systemctl daemon-reload

 

MySQL 서비스 시작

sudo systemctl start mysql

 

추가 설정

 - 시스템 부팅 시 mysql 서비스 자동 시작 설정

sudo systemctl enable mysql

 

잘 켜졌는지 mysql 상태 확인

sudo systemctl status mysql

 

active가 되어 있고 초록색 글씨가 보인다면 휴,... 기분좋게 mysql 접속 해보기

 

mysql -u root -p
Enter password : 
# 아까 비번 받은거 입력

 

잘 접속 됨!

mysql 수동 설치 완료

추가로 쿼리 실행하려면 비밀번호 먼저 바꿔야 실행 가능함

 

ALTER USER 'root'@'localhost' IDENTIFIED BY 'PASSWD1234!';
-- 에러 없이 나오면 변경 완료 
FLUSH PRIVILEGES;
-- 저장

 

 


다음엔 수동 설치한 MYSQL에 추가 ID 생성 DATABASE 생성 권한 설정 등등 해보기

 

MySQL 계정생성 DataBase 생성 접근 IP 설정

 

[Linux] - Rocky(CentOS) MySQL 초기 기본 설정, DataBases 생성, 접속 IP 권한 설정

CREATE USER 'mysqlTestID'@'localhost' IDENTIFIED BY 'mysqlTestIDPasswd1!';-- 추가로 DATABASES도 생성해 보겠음CREATE DATABASE test_database;-- 마지막에 ;는 mysql 쿼리 스크립트를 마치겠다는 의미!이전에 Linux에서 MySQL 수동

aieo-jay.tistory.com

 

반응형