본문 바로가기

Server Story..../mysql

my sql 튜닝 - 체크사항

1. 연결을 할 수 없습니다.

 

MySQL 에러번호 1045 'root'@'localhost' 엑세스 거절

 

패스워드 틀림:아님

 

만약 당신이 올바른 연결인지를 체크하기 원한다면

 

ping 버튼을 클릭하세요.

 

2. mysql 로그인에 실패한 오류입니다.

 

3. mysql 서버 켜져있는지 확인하고 my.ini 설정을 확인하시고 퍼미션 확인하세요.

 

4.

1. 오딘 v 986 압축 푸세요

 

2. 나비캣을 까세요 !<필수>

 

3. 비밀번호가 없다면     시작 --> 프로그램 --> Mysql --> MYsql server 의 구동파일같은걸

실행후 비밀번호 거세요 !

 

4. 안에는 키스토얼 파일들이  다있어서 우선  db.properties 이파일을 메모장으로 엽시다 ^^

# qualified class name of your JDBC driver
driver=com.mysql.jdbc.Driver
# JDBC URL to your database
url=jdbc:mysql://127.0.0.0:3306/odinms
# credentials for database access
user = root
password =

이렇게 나와있군요 !그럼 여기서

저 127.0.0.0 을 자기 아이피말고 !! localhost 로 고쳐줍시다 !

 

# qualified class name of your JDBC driver
driver=com.mysql.jdbc.Driver
# JDBC URL to your database
url=jdbc:mysql://localhost:3306/odinms
# credentials for database access
user = root
password =

이렇게요 !! 다음은 저기 맨밑의 바로 위 패스워드 를 root 으로 고쳐줍시다 !

# qualified class name of your JDBC driver
driver=com.mysql.jdbc.Driver
# JDBC URL to your database
url=jdbc:mysql://localhost:3306/odinms
# credentials for database access
user = root
password = root

이러면 db파일은 설정 완료입니다 ^^
그다음은

world.properties

파일을 메모장으로 엽시다 ^^

# experience factor
net.sf.odinms.world.exp=1000
# meso factor
net.sf.odinms.world.meso=1000
# drop factor
net.sf.odinms.world.drop=5
# bossdrop factor
net.sf.odinms.world.bossdrop=1
# spawn a character for debugging purposes on every map
net.sf.odinms.world.faekchar=false
# time in milliseconds between loginqueue runs
net.sf.odinms.login.interval=500
# time in milliseconds between ranking updates (default: 30 minutes)
net.sf.odinms.login.ranking.interval=1800000
# total user limit of the server
net.sf.odinms.login.userlimit=500
# defaults for channelservers
net.sf.odinms.channel.net.port=7575
net.sf.odinms.channel.net.interface=127.0.0.0
# active event scripts
net.sf.odinms.channel.events=lolcastle,3rdjob,Boats,Trains,Flights,ZakumPQ,Subway,KerningPQ

라고 나옵니다

여기 또한 127.0.0.0 이있습니다  그러나 저곳엔 자신의 아이피를 적습니다

만약 아이피가 123.123.123.123 이라면

# experience factor
net.sf.odinms.world.exp=1000
# meso factor
net.sf.odinms.world.meso=1000
# drop factor
net.sf.odinms.world.drop=5
# bossdrop factor
net.sf.odinms.world.bossdrop=1
# spawn a character for debugging purposes on every map
net.sf.odinms.world.faekchar=false
# time in milliseconds between loginqueue runs
net.sf.odinms.login.interval=500
# time in milliseconds between ranking updates (default: 30 minutes)
net.sf.odinms.login.ranking.interval=1800000
# total user limit of the server
net.sf.odinms.login.userlimit=500
# defaults for channelservers
net.sf.odinms.channel.net.port=7575
net.sf.odinms.channel.net.interface=123.123.123.123

# active event scripts
net.sf.odinms.channel.events=lolcastle,3rdjob,Boats,Trains,Flights,ZakumPQ,Subway,KerningPQ

이러면 구축은 완료 !

이제 나비캣으로 갑시다 !

 

연결  localhost

이름 localhost

아디 root

비번 root 합니다

그리고 연결을 한후

오른쪽 마우스 클릭 뉴 데이타 베이스 만들기

<New Datebase >

그리고 이름 odinms 확인

클릭후 또 오른쪽마우스 클릭후 E머시기 Batch file 클릭

배치파일 !@

.... 을 누른뒤 오딘 파일 폴더의 sql 파일 <메모장 > 다 불러옵시다 텍스트파일만요 ! sql 파일 폴더라고 있습니다

그리고 서버파일있는곳의 odinms 를 불러온후 다끝나면 웹에서 아디를 만드시구 

월드 로그인 채널 순으로 킵시다 0.55 wz 넣으시구요 ^^

 

5. 아이피는 직접 만드는게 아닙니다 시작눌러서 실행 눌러서 cmd치고 엔터하고 ipconfig 치고 엔터누르고

거기서 ip address 이게 님아이피주소임.

 

6. 주석달았음

[mysqld]
# MySQL이 설치된 디렉터리
basedir="C:/APM_Setup/Server/MySQL5/"
# MySQL데이터베이스 데이터가 저장될 디렉터리
datadir="C:/APM_Setup/Server/MySQLData/"

# MySQL 기본 케릭터셋
default-character-set=euckr
# MySQL에 연결될때 실행하는 명령어
init_connect=SET NAMES euckr
# MySQL 메세지 표시 언어 설정 ( C:\APM_Setup\Server\MySQL5\share\ 의 디렉터리명을 설정한다.
language=korean

# INNODB타입을 사용할지 하지 않을지
skip-innodb

# BDB타입을 사용할지 하지 않을지
skip-bdb

# 시스템 잠금을 사용할지 하지 않을지
#skip-locking

# 외부접속 차단, 특별히 외부에서 접속하지 않을 경우에는 주석을 해제한다.
#  - 주석처리 시에는 외부 접속을 허용하게 되므로 보안상 좋지 않다.
#    알기 어려운 root패스워드 등을 지정하셔야 보안상 위험이 적다.
#skip-networking
#shared-memory

# MySQL 3.x의 패스워드 체계를 사용하도록 설정
# 이전 버전에서 디비를 백업해서 이곳에 복구 하지 않을 경우에는 주석 처리 하는 것이 좋다.
old_passwords=1

connect_timeout = 10

# show status 명령을 했을때 , max_used_connections을 보고 늘리던가, 줄이던가 해야 한다.
# 최대값보다 10% 정도 더 크게 잡는 것이 좋다.
max_connections = 3000
wait_timeout = 60

# 인덱스를 위한 버퍼크기, 키 버퍼의 크기는 공유된쓰레드의 크기이며 중복된 키를 자주 사용할 경우 속도를 높일 수 있고,
# 기준은 show status 명령을 했을 때 Key_blocks_used를 체크해서 key_buffer 사이즈를 줄이던가 늘리던가 해야 한다.
# 일반적인 key_buffer 의 크기는 Key_blocks_used*1024 로 잡으면 된다.
# Key_reads 가 크다면, key_buffer_size 변수가 너무 작은 것이다.
# 대용량 테이블일 경우 쿼리가 느리다면, 인덱스 버퍼 크기가 작아서 느릴 수 있으므로 key_buffer 크기를 늘려 주어야 한다.
# show status 명령에서 다음과 같이 계산되는 것이 key_buffer 설정이 적당한 것이다.
# Key_reads/Key_read_request < 0.01   [ 0.00112318293327 ]
# key_write/key_write_request = 1     [ 0.0763101585936 ]
# | Key_blocks_used          | 360325     |  > 368972800
# | Key_read_requests        | 386263882  |
# | Key_reads                | 433845     |
# | Key_write_requests       | 5685285    |
key_buffer = 256M

# 클라이언트 통신에 대해 사용되는 버퍼가 커질수 있는 최대 크기,
# 이변수의 가장 큰 값은 MySQL 4 이전은 16MB 가 될 수 있고 MySQL 4와 그 이후는 1GB까지 될 수 있다.
# 클라이언트가 커다란 BLOB나 TEXT값들을 전송하는 경우라면, 이 서버 변수를 늘릴 필요가 있고 클라이언트 측에서도 이것을 늘려야 할 것이다.
max_allowed_packet = 1M

# MySQL 서버가 한번에 열수 있는 테이블의 개수 설정,
# 기본값은 64개이다, Opened_tables 값이 크다면 table_cache 값이 너무 작은 것이다.
# max_connections 값과도 관계가 있는데, 만약 100이라면 table_cache는 100*n 으로 설정해 주는것이 좋다.
# n은 조인해서 열수 있는 최대 테이블 개수이다.
# ex ) 사용중인 테이블이 20개이고, max_connections=100이라면, table_cache 는 그의 5~6배인 table_cache=512 정도로 설정하는 것이 좋다.
table_cache = 6000

# 정렬을 위해 사용하는 버퍼 크기, ORDER BY 나 GROUP BY 절을 빠르게 하기 위해서는 이 값을 증가시킨다.
# 4.0.3 이전에서는
# sort_buffer_size => sort_buffer
# read_buffer_size => record_buffer
# 라는 변수로 쓰였다.
# max_used_connections에 따라서 증가시키는 것이 좋다. 한번에 많은 쓰레드가 동시에 붙을 경우는 증가시키는 것이 좋다.
# max_used_connections가 높을 경우 sort_buffer=6M 정도로 설정하는 것이 좋고, record_buffer=2M 정도가 적당하다.
# sort_buffer와 record_buffer 를 합쳐서 8M를 넘지 않는 것이 좋다.
# (sort_buffer+record_buffer)*max_connections를 할 경우 ram을 다 차지할 수 있기 때문이다.
# 많은 연속적인 테이블 스캔이 이루어진다면 read_buffer_size 값을 증가시켜야 한다.
sort_buffer_size = 1M
read_buffer_size = 1M

# MyISAM 테이블 타입에서 인덱스를 만들거나(create table ..), 인덱스로
# 변경(alter table ...) 하거나, 복구( repair ...) 할 때 사용하는 버퍼크기
myisam_sort_buffer_size = 64M

thread_cache = 8

# 쿼리 캐시 버퍼 사이즈
query_cache_size= 16M

# CPU개수 * 2 를 한 값을 입력 ( 솔라리스에서만 사용된다는데 정확하게는 잘 모르겠음.. )
thread_concurrency = 4

[client]
default-character-set=euc-kr
init_connect=SET NAMES euc-kr
language=korean

[mysqldump]
default-character-set=euc-kr
init_connect=SET NAMES euc-kr
language=korean

7. 네 mysql서버를 확인하라는겁니다. mysql 서버는 데이터베이스서버를 말하는건데 이 서버에 레벨이나 끼고있는 아이템같은 캐릭터정보가 들어갑니다. IO속도를 높이고 편의성을 위해서 사용하는겁니다. 이 데이터베이스 서버는 따로 실행하셔야 됩니다. APMSETUP이라는 프로그램깔면 자동으로 쉽게 설치가 가능합니다.

 

진짜 힘들게 썼네요 채택점여.

전에쓴질문도 같이 채택해주세요.

'Server Story.... > mysql' 카테고리의 다른 글

mysql backup  (0) 2014.04.23
DB 자동저장 스크립트  (0) 2011.01.26
mysql 백업 및 자동삭제 스크립트  (0) 2010.12.17
우분투 8.04 mysql에서 DB파일의 위치를 변경 방법  (1) 2010.12.17