데이터베이스/기타

Mac에서 Oracle(XE) + Mysql + DBeaver 설치

ReBugs 2024. 2. 22.

아래의 모든 명령어은 Homebrew가 설치되어있다고 가정한다.

 

DBeaver 설치

터미널에서 아래의 명령어를 입력하면 특별한 오류가 나지 않는이상 설치는 완료된다.

brew install --cask dbeaver-community

이후 앱을 실행하면 된다.

 

Oracle(XE)

Oracle XE

Oracle Database Express Edition (Oracle XE)은 Oracle Corporation에서 제공하는 무료, 경량 버전의 Oracle 데이터베이스이다. 이 버전은 개발자, 교육용으로, 그리고 소규모 배포를 위해 설계되었다.
Oracle XE는 기능적으로는 전체 Oracle 데이터베이스 시스템의 서브셋을 제공하지만, 많은 기본적인 기능과 툴을 포함하고 있어 데이터베이스 학습이나 개발, 테스트 환경 구축에 이상적이다.

초기 세팅

https://www.youtube.com/watch?v=yCQD_rZEzZs&ab_channel=%EB%A6%AC%EC%96%BC%EB%8D%B0%EB%B8%8C%E2%B8%B0%EB%9F%AC%EB%8B%9D

위 영상을 참고하였음

 

터미널에서 아래의 명령어를 입력한다.

 

먼저 오라클은 맥 os를 지원하지 않기 때문에 도커를 통해서 실행할 수 있기 때문에 도커를 설치한다.

brew install docker

 

Colima MacOS 사용자를 위한 Docker Kubernetes 환경을 간편하게 설정하고 관리할 있는 오픈 소스 도구이다.

도커를 원활히 실행시킬 수 있도록 콜리마 또한 설치한다.

 

brew install colima

 

colima start --arch x86_64 --cpu 4 --memory 8 명령어는 Colima를 사용하여 x86_64 아키텍처를 지원하는 컨테이너 환경을 시작하는 데 사용된다.

여기서 --cpu 4는 컨테이너에 4개의 CPU 코어를 할당하고, --memory 8은 8GB의 메모리를 할당하라는 것을 의미한다.

 

colima start --arch x86_64 --cpu 4 --memory 8

 

아래의 명령어에서 가장 중요한 부분은 -e ORACLE_PASSWORD=비밀번호 이다.

데이터베이스의 SYS, SYSTEM, PDBADMIN 계정에 대한 비밀번호를 "비밀번호"로 설정한다.

당연히 이 부분은 사용자가 자신이 원하는 패스워드로 변경해서 명령어를 실행해야 한다.

docker run -d --name oracle-xe -p 8080:8080 -p 1521:1521 -e ORACLE_PASSWORD=비밀번호 -v ~/data/oracle:/opt/oracle/oradata gvenzl/oracle-xe

 

이후 sysdba 권한으로 접속한다.

sqlplus 명령어를 실행할 수 없다면
docker exec -it oracle-xe sqlplus 명령어를 사용하면 된다.
sqlplus / as sysdba

 

orcl이라는 사용자를 생성하고 비밀번호를 java로 설정한다.(원하는 아이디와 비밀번호로 바꿔도된다.)

CREATE USER orcl IDENTIFIED BY java;

 

권한 부여

GRANT CONNECT, RESOURCE TO orcl;

 

사용 방법

실행

콜리마를 실행한다.

이미 이 명령어를 실행했다면 이 부분은 생략해도 된다.

colima start --arch x86_64 --cpu 4 --memory 8

 

도커가 oracle-xe 컨테이너를 실행하는 명령어를 입력한다.

docker start oracle-xe
docker ps 명령어를 이용해 oracle-xe 컨테이너가 있는지 확인할 수 있다.

 

작업

이제 실행은 되고 있는 상태이다.

따라서 실행 - 작업 - 종료 순서에서 이 부분인 작업 부분은 사용자에 따라 다르기 때문에 무시해도 된다.

 

DBeaver에서 위에서 설정한 정보를 바탕으로 접속하려면 아래와 같다.

Database : XE

Username : orcl

Password : java

 

sqlplus 명령어를 사용하려면 아래의 명령어를 입력하면 된다.

docker exec -it oracle-xe sqlplus

 

sqlplus 명령어를 모두 끝냈다면 exit를 입력해서 벗어나면 된다.

exit

 

 

종료

실행 하는 순서를 거꾸로하면 종료하는 순서가 된다.

docker stop oracle-xe

 

colima stop

 

 

MySQL(8.X)

초기 설정

mysql 설치

brew install mysql

 

mysql 서버 시작

mysql.server start

 

보안 설정 스크립트

mysql_secure_installation

 

보안 설정 스크립트를 실행하면 아래와 같이 어떻게 보안을 설정할지 물어본다.

이 부분은 각자 환경에 맞게 설정하면 된다.

Would you like to setup VALIDATE PASSWORD plugin?
설치 과정에서 설정하지 않았다면, MySQL 루트 계정의 비밀번호를 설정하라는 요청을 받게 된다. 이미 설정된 비밀번호가 있다면, 더 강력한 비밀번호로 변경할 것인지 묻는다.

Remove anonymous users?
익명 사용자 제거: MySQL은 기본적으로 '익명 사용자'를 허용하는데, 이는 누구나 사용자 이름 없이 MySQL 서버에 접근할 수 있음을 의미한다. mysql_secure_installation 스크립트는 이러한 익명 사용자를 제거하도록 권장한다.

Disallow root login remotely?
루트 사용자 원격 접속 제한: 기본적으로, 루트 사용자는 어느 네트워크에서나 MySQL 서버에 접근할 수 있다. 보안을 위해, 이 스크립트는 루트 사용자의 원격 접속을 금지하고 로컬에서만 접근할 수 있도록 설정을 변경할 것을 권장한다.
->localhost 외에 다른 아이피로는 접속을 하지 못하게 하는 설정

Remove test database and access to it?
test 데이터베이스 삭제 여부: 보통 y를 선택

Reload privilege tables now?
권한 테이블 즉시 적용: 변경사항을 적용하고 권한 테이블을 새로고침하여, 모든 보안 변경사항이 바로 적용되도록 한다. 변경 사항을 즉시 적용하기 위해 보통 Y를 선택

 

사용 방법

MySQL 서버 시작 명령(이미 시작되어있다면 생략)

mysql.server start

 

루트 계정으로 로그인 명령

mysql -uroot -p

설정한 비밀번호를 입력해야 접속 가능

 

MySQL 서버 종료 명령

mysql.server stop

 

DBeaver 접속 설정

mysql_secure_installation에서 설정한 루트 비밀번호를 입력하여 접속

 

댓글