출처: VirtualBox + Ubuntu + MySQL 설치 하기 (tistory.com)
회사에서 간단한 배치파일을 만들게 되었다.
이왕 만드는 김에 근본있게 만들어 보자 생각하던 중 Spring Batch 관련 글을 찾게 되었고, 주말인 오늘 실습해 보고자 한다.
라는 글을 쓰기 전에 조금 고민을 했다.
우선 환경 구축을 위해 MySQL을 설치해야 한다.
내 개인 PC에 Database 인스턴스를 설치하고 띄우긴 싫다.
VirtualBox를 설치할건데.. 또 윈도우 라이센스가 없다..
그냥 Ubuntu를 깔고 DB를 올리자.
그렇게 이 글이 탄생했다.
1. VirtualBox 설치
무료 가상화 프로그램인 VirtualBox를 다운받자.
5.2.38버전으로 받아 설치했다.
2. Ubuntu 18.04 다운로드
설치를 위해 Ubuntu iso 파일을 다운로드 받는다.
3. VirtualBox 가상머신 생성
[새로 만들기]를 클릭하여 가상머신을 생성한다.
다음 단계 진행을 위해 아래 항목들을 세팅한다.
- 가상머신 클릭 후 설정 진입
- [저장소] > 저장 장치 > 컨트롤러:IDE / 비어있음 > Ubuntu.iso 마운트
(Optional) 가상머신이 꽤 느릴 수 있기 때문에 일부 설정을 변경해준다.
- [시스템] > 마더보드 > 기본 메모리(→ 2048)
- [시스템] > 프로세서 > 프로세서 개수(→ 2)
- [시스템] > 가속 > 반가상화 인터페이스(→ Hyper-V)
- [디스플레이] > 화면 > 비디오 메모리(→ 128MB)
- [디스플레이] > 화면 > 가속(→ 3차원 가속 사용하기 체크)
4. 가상머신 실행 / Ubuntu 18.04 설치
5. MySQL 설치
Ubuntu 설치가 완료되면 터미널 실행 후 아래 명령을 수행한다
a) mysql 설치
$ sudo apt install mysql-server
b) mysql 접속 설정(매우 중요!!)
이 것 때문에 정말 고생했다.
내 가상화 설정이 잘못되었다고 생각했는데, mysql default 세팅 문제였다...
(Heidi오류: Lost connection to MySQL server at 'handshake: reading initial communication packet', system error: 0.)
아래 파일에 다음 2가지 옵션을 주석처리 해야 한다: #bind-address = 127.0.0.1 #skip-external-locking
$ sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
그래도 안 된다면 아래 파일에 다음 문장을 추가한다: mysqld:ALL
$ sudo nano /etc/hosts.allow
c) mysql 실행
$ sudo mysql
d) 계정 생성
mysql> GRANT ALL PRIVILEGES ON *.* TO 'wrallee'@'%' IDENTIFIED BY 'password';
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
mysql> select user, host from mysql.user;
+------------------+-----------+
| user | host |
+------------------+-----------+
| wrallee | % |
| debian-sys-maint | localhost |
| mysql.session | localhost |
| mysql.sys | localhost |
| root | localhost |
+------------------+-----------+
5 rows in set (0.00 sec)
6) VirtualBox 네트워크 설정
호스트(Windows) - 게스트(Ubuntu) 간 통신을 위해 포트포워딩 설정을 한다.
Ubuntu 터미널에서 아래 명령을 입력하여 가상 IP를 확인한다.
$ ip addr show
아마 두 개가 조회 될 건데, inet 10.0.x.x/24 뭐 이런식으로 되어있을듯 하다.
확인 후 가상머신을 아래와 같이 세팅해준다.
- 가상머신 클릭 후 설정 진입
- [네트워크] > 어댑터 1(NAT) > 고급 > 포트 포워딩 > 새 규칙 추가
→ 프로토콜:TCP
→ 호스트IP: 127.0.0.1 / 호스트Port: 13306
→ 게스트IP: 10.0.x.x / 게스트Port: 3306
7) HeidiSQL 다운로드
여러 DB 접속 툴이 있겠지만 나는 HeidiSQL Portable을 받았다.
다운로드 속도가 매우 느리지만 인내하고 기다렸다.
실행 후 아래와 같이 입력하여 접속한다.
→ 호스트명/IP: 127.0.0.1
→ 사용자: wrallee
→ 암호: password
→ 포트: 13306
'정보관리(데이터베이스, DB) > MySQL' 카테고리의 다른 글
MySQL 도커 컨테이너 설치 후 DBeaver 연결하기 (0) | 2023.08.01 |
---|---|
Docker로 mysql container 생성하고 DBeaver로 접속하기 (0) | 2023.08.01 |
[MySQL] [08S01] Communications link failure (0) | 2023.08.01 |
계정 접속상태 확인 & 계정 외부주소 접근허용 설정법 (0) | 2023.08.01 |
[Virtualbox] 버추얼박스에 설치한 MySQL 접속하기 (0) | 2023.08.01 |