4. 아테나 데이터베이스 구축
4. 아테나 데이터베이스 구축
아테나 컴파일 후 아테나에서 사용할 데이터베이스를 생성하고
MySQL Workbench를 이용해서 데이터베이스를 열람하고 편집한 뒤 아테나에서 연결하여 사용할 수 있도록 해야합니다.
MySQL Workbench를 이용한 DB 접속 계정 생성 및 연결
가장 먼저 MySQL Workbench를 실행해 봅니다.
![](https://t1.daumcdn.net/cfile/tistory/23797F4355D19DD311)
아래와 같이 실행 된 후에 localhost 자신의 컴퓨터 Connections를 선택합니다.
![](https://t1.daumcdn.net/cfile/tistory/253BAD4155D19EC21E)
처음 연결 시 아래와 같이 암호를 물어보며,
처음 설치시 설정했던 암호를 입력하고 다음 연결부터는 물어보지 않도록 Save password in vault를 체크합니다.
![](https://t1.daumcdn.net/cfile/tistory/2178613E55D19FFA1F)
Root 계정으로 접속했다면 아래와 같은 화면이 나올 것입니다
처음 접속한다면 SCHEMAS에 샘플만 있거나 아무 것도 없을 것입니다.
![](https://t1.daumcdn.net/cfile/tistory/253F594F55D278341C)
먼저 아테나에서 DB로 연결할 수 있도록 에뮬에서 연결할 계정을 생성합니다.
Users and Privileges를 선택한 후 Add Account 선택.
Login Name에 원하는 계정명을 넣고
Limit to Hosts Matching에 127.0.0.1 또는 localhost를 적습니다.
자신만 알 수 있는 암호를 설정하고
![](https://t1.daumcdn.net/cfile/tistory/2572FF4D55D2A4AC10)
Administrative Roles 탭으로 넘어가서 모든 항목에 체크를 해줍니다.
(가장 처음의 DBA를 선택하면 한번에 모두 선택할 수 있습니다.)
마지막으로 Apply를 클릭하면 새로운 계정이 만들어 집니다.
![](https://t1.daumcdn.net/cfile/tistory/247C8F3E55D2AD8C13)
이렇게 생성된 MySQL 계정은 Hercules의 경우 conf > inter-server.conf에 사용됩니다.
rAthena의 경우 conf > inter_athena.conf에 사용됩니다.
![](https://t1.daumcdn.net/cfile/tistory/2119894155D2C01D37)
이제 위에서 생성한 계정을 아래와 같이 inter-server.conf 또는 inter_athena.conf 의 db_username과 db_password에 적어줍니다.
![](https://t1.daumcdn.net/cfile/tistory/26791A4955D2D23924)
이로써 아테나에서 DB로 연결할 계정을 생성하고 아테나에 계정 정보를 적었습니다.
이 계정정보는 유출되지 않도록 각별히 주의 합니다.
MySQL Workbench를 이용한 아테나 DB 구축
다시 MySQL Workbench의 첫 화면으로 이동한 후 root 계정의 connection으로 접속합니다.
![](https://t1.daumcdn.net/cfile/tistory/225C0F3C55D2DA341C)
Create a new schema ...을 선택하여 새로운 스키마를 생성합니다.
![](https://t1.daumcdn.net/cfile/tistory/2641DB4E55D2DDDB0B)
스키마의 이름은 원하는 이름으로 해줍니다.
![](https://t1.daumcdn.net/cfile/tistory/23281A3955D2E2E635)
Apply를 반드시 클릭해야 올바르게 생성됩니다.
![](https://t1.daumcdn.net/cfile/tistory/21300D4355D2E39A20)
Finish를 선택하여 완료해 줍니다.
![](https://t1.daumcdn.net/cfile/tistory/2415B24155D2E3E513)
이제 inter-server.conf 또는 inter_athena.conf 에 연결될 스키마 이름을 설정해 줍니다.
위 파일들은
conf > inter-server.conf
conf > inter_athena.conf
에 위치해 있습니다.
![](https://t1.daumcdn.net/cfile/tistory/2607124655D2E50A21)
생성된 스키마를 우클릭하여 Set as Default Schema를 선택합니다.
![](https://t1.daumcdn.net/cfile/tistory/217C8E3A55D2E63B08)
다음과 같이 스키마 이름이 볼드체로 바뀌는 것을 볼 수 있습니다.
![](https://t1.daumcdn.net/cfile/tistory/262DCF3355D2E68E0B)
다음 각 아테나의 sql-files 폴더의
![](https://t1.daumcdn.net/cfile/tistory/2267BD3855D2D98B44)
logs.sql
main.sql
이라는 이름의 SQL Text File을 확인해 둡니다.
![](https://t1.daumcdn.net/cfile/tistory/2106EB4A55D2E72914)
Open a SQL script .... 을 선택하여 위에 확인해 둔 파일 중 main.sql 파일을 불러옵니다.
![](https://t1.daumcdn.net/cfile/tistory/24569B4555D2E88816)
아래와 같이 많은 SQL 구문을 불러와야 합니다.
![](https://t1.daumcdn.net/cfile/tistory/2624574055D2E90635)
다음 번개 모양의 실행 버튼을 클릭하여 불러온 SQL 명령문을 실행하여 Table 테이블을 생성합니다.
![](https://t1.daumcdn.net/cfile/tistory/213C8E4055D2E9B124)
명령문이 실행되는 것을 아래의 Output 창에서 볼 수 있습니다.
![](https://t1.daumcdn.net/cfile/tistory/2420E24655D2EA0A27)
새로고침 버튼을 눌러 업데이트된 스키마를 선택하여 Tables에 추가된 테이블을 확인합니다.
![](https://t1.daumcdn.net/cfile/tistory/254D603455D3A89617)
main.sql을 불러올 때와 같은 방법으로 logs.sql을 불러옵니다.
![](https://t1.daumcdn.net/cfile/tistory/265CB14B55D3A95909)
불러온 SQL script를 확인하고 번개모양의 아이콘을 선택해 스크립트를 실행하여 테이블을 생성합니다.
![](https://t1.daumcdn.net/cfile/tistory/2133054655D3A9F309)
스크립트가 실행되는 것을 Output 창에서 확인할 수 있습니다.
![](https://t1.daumcdn.net/cfile/tistory/2646F04155D3AA6144)
이로써 아테나와 연결될 데이터베이스 구축이 완료되었습니다.
(하지만 아직 서버 실행 시 제대로 실행되지 않습니다.
아래의 데이터베이스 수정하는 방법과 함께 설명하도록 하겠습니다.)
rAthena와 Hercules는 DB 구조나 테이블명이 다르므로 반드시 따로 데이터베이스를 구축해야 합니다.
MySQL Workbench를 이용한 DB 수정
생성한 스키마 안의 Tables에서 왼쪽의 삼각형을 클릭해 목록을 펼쳐봅니다.
![](https://t1.daumcdn.net/cfile/tistory/2224763F55D3AE3218)
많은 테이블 중 login 테이블을 찾아서 우클릭 > Select Rows를 선택합니다.
![](https://t1.daumcdn.net/cfile/tistory/2414813755D3B05817)
아래와 같이 login 테이블의 내용을 보고 수정할 수 있는 창이 나타나게 됩니다.
![](https://t1.daumcdn.net/cfile/tistory/2148B83455D3B16D2A)
s1, p1으로 설정된 셀을 더블 클릭하여 원하는 ID와 PW를 설정합니다.
이 계정명과 비밀번호 또한 다른 사람에게 유출되지 않도록 주의합니다.
수정 후에는 Apply를 클릭하여 수정을 완료합니다.
![](https://t1.daumcdn.net/cfile/tistory/261EA03555D3B3B419)
아래와 같이 실행될 쿼리문을 Apply로 실행한 후 Finish로 제대로 실행된 것을 확인합니다.
![](https://t1.daumcdn.net/cfile/tistory/274F6D4555D3B47326)
여기까지가 MySQL Workbench를 이용한 데이터베이스 조회 및 편집이었습니다.
필요한 로그나 데이터베이스를 위와 같이 원하는 테이블을 우클릭 > Select Rows를 이용하여 조회 및 편집할 수 있습니다.
이제 최소한의 서버 구동을 위해 마지막으로 아테나 설정을 하겠습니다.
Hercules의 경우 conf 폴더의 char-server.conf 와 map-server.conf 파일
rAthena의 경우 conf 폴더의 char_athena.conf 와 map_athena.conf 파일을
메모장 등의 편집기를 이용하여 엽니다.
![](https://t1.daumcdn.net/cfile/tistory/275AD24855D3C3E810)
그 다음 이전에 수정했던 login 테이블의 userid, user_pass를
Hercules의 경우 conf 폴더의 char-server.conf 와 map-server.conf 파일 또는
rAthena의 경우 conf 폴더의 char_athena.conf 와 map_athena.conf 파일에 아래와 같이 적어줍니다.
![](https://t1.daumcdn.net/cfile/tistory/250F074755D3CB4227)
이 계정명과 비밀번호는 유출되지 않도록하며
기본 설정인 s1, p1을 수정하지 않고 그대로 사용할 경우 서버 구동이 되지 않기 때문에 적당히 수정한 뒤 설정합니다.
![](https://t1.daumcdn.net/cfile/tistory/2631BC3C55D3CB9426)
이로써 가장 기본적인, 최소한의 서버 설정으로 구동이 가능해졌습니다.