mysql 58

mysql "Specified key was too long; max key length is 1000 bytes"

Specified key was too long; max key length is 1000 bytes mysql 이 key 의 길이를 1000바이트로 제한하기 때문이다. mysql 측에서는 이걸 버그라 보지 않고 “제한”이라고 봐서 당분간은 처리할 용의가 없답니다. latin-1 에서는 1글자가 1바이트이지만 utf-8 에서는 한글자가 3바이트이기 때문에 크기 계산에 주의해야 한다. latin1 = 1 byte = 1 chararcter uft8 = 3 byte = 1 chararcter 즉, varchar(255)에서 255는 255 “바이트”가 아니라 “글자”이기 때문이다. utf-8일 경우 한글은 한 글자당 3바이트이므로 255 * 3 * 2 > 1000 이다. 해결은 TYPE… 부분을 ENGINE..

db/mysql 2010.08.30

mysql max_connect

Max connections 에러가 발생하면 PHP페이지에 Too many connection가 나옵니다. 이는 mysql에서 동시열결가능한 클라이언트수를 넘었기 때문이다. MySQL 서버는 동시에 연결될 수 있는 클라이언트의 수가 기본으로 100 명이다. 동시접속자수를 변경하려면 my.cnf을 수정하고 MySQL 서버를 재시작하면 된다. sudo vi /etc/my.cnf [mysqld] # 1,000 이상은 4Way CPU 와 상당한량의 메모리가 필요하답니다. 적절한 값은 256이라고 하는군요. max_connections = 500 table_cache = 256 wait_timeout = 50 참고 자포자기면 백전백승이고 지피지기면 진퇴양란? : mysql-too many connection 꿈을..

db/mysql 2010.08.21

mysql unauthenticated user 프로세스 문제

mysql 프로세스 리스트에 unauthenticated user 가 많이 쌓임. lookup 에서 시간을 잡아 먹음 sudo vi /etc/my.cnf [mysqld] skip-name-resolve 위 설정을 하고 mysql 재시작하니 문제가 없어졌습니다. 수면부족님의 포스팅 내용을 참고 했습니다. 위 현상에 대한 이유는 다른분들의 포스팅에 잘 설명이 되어 있습니다. 참고 mysql unauthenticated user | 말레이시아의 기막힌 절경이 보고파 unauthenticate user 수면부족 : MySQL unauthenticate user 프로세스가 쌓일때... 그외... vi /etc/my.cnf [mysqld] skip-networking skip-name-resolve skip-hos..

db/mysql 2010.08.20

mysql 기본명령어

버전확인 SELECT VERSION(); 날짜 확인 SELECT CURRENT_DATE; 두문장을 같은 테이블에 출력 SELECT VERSION(), CURRENT_DATE; 두개 이상 질의문을 한줄에 사용가능 SELECT VERSION(); SELECT NOW(); company 데이타베이스를 생성 CREATE DATABASE company; 현존하는 데이타베이스 출력 SHOW DATABASES; 데이터베이스와 모든테이블 삭제 DROP DATABASE company; company 데이타베이스를 사용 USE company; 모든 테이블을 보여줌 SHOW TABLES; 테이블과 속성생성 CREATE TABLE salesman (sno char(4) PRIMARY KEY, sname char(10) NOT..

os/Linux 2007.04.20

mysql의 최대 성능 향상 방법

mysql의 최대 성능 향상 방법출처 : http://www.apmtip.co.kr 버퍼 크기 조정mysqld 서버가 사용하는 기본 버퍼 크기는 다음의 명령으로 알 수 있다. shell> mysqld --help 이 명령은 모든 mysqld 옵션의 목록과 설정 변수를 보여준다. 출력되는 내용은 기본값을 포함하고 있으며 다음과 비슷하다. Possible variables for option --set-variable (-O) are: back_log current value: 5 connect_timeout current value: 5 join_buffer current value: 131072 key_buffer current value: 1048540 long_query_time current val..

db/mysql 2006.09.22

MySQL 예제와 성능튜닝

MySQL Example 사용자 추가 insert into user values('192.168.25.4', 'root',password('패스워드'),'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y',' ',' ',' ',' ',0,0,0,0); 테이블 복사 create table [new_table_name] select * from [source_table_name]; MySQL Prompt 에서 VI로 SQL Query 작성 edit # 작성후 :wq 여러 데이터베이스 연결 $a = mysql_connect('a', 'b', 'c', 1); $b =..

db/mysql 2006.09.22

mysql 인덱스

mysql 인덱스생성 문법 BLOB과 TEXT 타입을 제외한 모든 mysql의 칼럼 타입은 인덱스로 사용될 수 있다. 한 테이블에는 16개의 인덱스를 생성할 수 있으며 최대 인덱스의 길이는 256바이트이다. 또한 인덱스에 사용되는 칼럼은 NOT NULL이어야 한다. 인덱스의 생성은 테이블을 생성할 때 다음처럼 생성하면 된다. KEY [인덱스명] (col1(length),col2(length),...) 인덱스의 생성 CREATE TABLE test ( id CHAR(20) NOT NULL, name CHAR(200) NOT NULL, PRIMARY KEY (id), KEY index_name (name(200)) ); 인덱스의 추가 ALTER TABLE test ADD INDEX index_id (id) ..

db/mysql 2006.09.22
반응형