본문 바로가기

MySQL

DB자료형 mysql, 오라클, mssql 1. 자료형의 종류 [mssql2000] bigint 8바이트 64비트 부호 있음 int 4바이트 32비트 " smallint 2바이트 16비트 " tinyint 1바이트 8비트 " decimal(p,s) 실수표현 p: 전체자리수 , s는 소수점 부분의 길이 numeric(p,s) " money 8바이트 64비트 통화 단위 1/10000의 정확성을 가짐 smallmoney 4바이트 32비트 " [oracle] number 10바이트 80비트 부호있음 , 기본이 10바이트 number(n) 바이트 지정, n은 바이트 숫자 number(p, s) 실수표현 p: 전체자리수, s는 소수점 부분의 길이 [mysql] : 가장 많음 .ㅠ.ㅠ tinyint 1바이트 정수 smallint 2바이트 정수 mediumin.. 더보기
apm 설치방법 (mysql, apache, php, zend) 1. 필수 라이브러리 설치 [root@byungun mysql-5.1.49]# yum -y install gd gd-devel libpng libpng-devel libjpeg libjpeg-devel freetype freetype-devel fontconfig fontconfig-devel libxml2 libxml2-devel openssl openssl-devel gmp gmp-devel mhash mhash-devel libmcrypt libmcrypt-devel 2. MySQL 설치 [root@byungun mysql-5.1.49]# useradd -m -c "MySQL Server" -d /usr/local/mysql -s /bin/false -u 27 mysql [root@byungun m.. 더보기
mysql my.cnf 설정 하기 / mysql 최대 접속자 수 늘리기 my.cnf 설정 하기 1.my.cnf 설정 + key_buffer_size : 성능에 많은 영향을 주는 설정이다. 키버퍼는 인덱스블락에서 사용하는 버퍼의 크기이며 인덱스가 많은 테이블에서 insert, delete릐 작업이 많다면 증가해 주는 것이 좋다. + max_connections : 동시 접속자수이다. 적당량으로 사용하는 것이 좋다. 너무 과하면 좋지 않다. + table_cache : 모든 쓰레드에서 열 수 있는 테이블 숫자이다. + join_buffer_size : full-join에서 사용하는 버퍼의 크기아다. full-join을 많이 사용하는 경우 늘려주는 것이 좋다. (왠만하면 인덱스를 사용한 조인을 하는 것이 속도가 빠르다) + max_join_size : 최대 조인의 크기이다. 크기.. 더보기
mysql 한글(euc-kr 설정) # vi /etc/my.cnf (windows : [MYSQL_PATH]/my.ini 편집) [client] default-character-set=euckr [mysqld] language=[MYSQL_PATH]/share/korean init_connect = SET collation_connection=euckr init_connect = SET NAMES euckr default-character-set=euckr collation-server=euckr default-collation=euckr_korean_ci [mysqldump] default-character-set=euckr [mysql] default-character-set=euckr # service mysqld restart my.. 더보기
[MySQL] NOW() 함수와 SYSDATE() 함수 현재의 시간을 구하는 2개의 함수가 있다. NOW() SYSDATE() 차이점은 무엇일까? 아래의 쿼리를 보면 알수 있다. SELECT NOW(), SLEEP(2), NOW(); SELECT SYSDATE(), SLEEP(2), SYSDATE(); 짐작이 되는가? 결과를 보자.. SELECT NOW(), SLEEP(2), NOW(); 2010-09-30 14:18:35 0 2010-09-30 14:18:35 SELECT SYSDATE(), SLEEP(2), SYSDATE(); 2010-09-30 14:18:35 0 2010-09-30 14:18:37 그렇다.. SYSDATE는 함수가 실행되는 순간의 시간이고, NOW는 쿼리가 실행되는 순간의 시간이다. 간단한 차이지만, SYSDATE를 사용할때 발생할수 .. 더보기
mysql_stmt_execute() 예제소스!! int mysql_stmt_execute(MYSQL_STMT *stmt Return Values Zero if execution was successful. Nonzero if an error occurred. Errors CR_COMMANDS_OUT_OF_SYNC Commands were executed in an improper order. CR_OUT_OF_MEMORY Out of memory. CR_SERVER_GONE_ERROR The MySQL server has gone away. CR_SERVER_LOST The connection to the server was lost during the query. CR_UNKNOWN_ERROR An unknown error occurred #defi.. 더보기
mysql c언어 api라이브러리 사용법 MySQL C API 1) my_ulonglong mysql_affected_rows(MYSQL* mysql) INSERT, UPDATE, DELETE 등의 query로 영향을 받은 ROW의 수를 리턴한다. 2) void mysql_close(MYSQL* mysql) 서버와의 연결을 종료한다. 3) void mysql_data_seek(MYSQL_RES* result, unsigned int offset) result에서 임의의 ROW에 접근을 하도록 하는 함수이다. offset이 row의 번호를 나타낸다. 0이면 처음 ROW, mysql_num_rows( result ) - 1 은 마지막 row를 나타낸다. 4) unsigned int mysql_errno(MYSQL* mysql) 가장 최근에 mysq.. 더보기
mysql 백업/복구 mysql 백업 복구 백업 mysqldump -u [user_name] -p [백업할 db_name] > [외부로 저장할 파일명] >mysqldump -u ijyzzang -p ijyzzang > ijyzzang0702.sql password: 복구 mysql -u [user_name] -p [백업할곳 DB_NAME] < ijyzzang0702.sql >mysql -u ijyzzang -p ijyzzang < ijyzzang0702.sql 한글 깨짐 mysql -u [ID] -p --default-character-set=euckr [디비이름] < [백업파일이름] *.sql 파일의 CHARSET 확인 테이블의 구조라든지 데이터만 뽑아내고 싶을 때도 있다. 테이블 구조만 백업하고 싶다면 mysqldump .. 더보기
My Sql 다운로드 사이트 여기 드러가서 다운로드^^ http://dev.mysql.com/downloads/mysql/ 더보기
mysql 외래키 설정법 문법은 다음과 같다. [CONSTRAINT symbol] FOREIGN KEY (index_col_name, ...) REFERENCES table_name (index_col_name, ...) [ON DELETE {CASCADE | SET NULL NO ACTION | RESTRICT}] [ON UPDATE {CASCADE | SET NULL NO ACTION | RESTRICT}] 사용 예제이다. ALTER TABLE board_free -- 설정할 테이블 ADD FOREIGN KEY (mem_no) -- 테이블에 FK 컬럼 REFERENCES members(mem_no)-- FK 연결이 되는 테이블과 PK 컬럼 ON DELETE RESTRICT -- 기본설정으로 자식에서 부모를 삭제 불가 ON U.. 더보기
mysql 외부접속 허용!! mysql이 외부로도 서비스가 가능하게 하려면, 몇 가지의 확인사항과 그 외에 추가적인 설정을 해야 할 필요가 있습니다. mysql이 설치된 서버의 운영체제를 명시해주시지 않아서, 유닉스 계열 운영체제라 가정하고 설명드리겠습니다. #1. 우선, 기본적으로 mysql 은 tcp 3306 번 포트를 통해 서비스를 제공합니다. 따라서, 외부에서 DB에 접근할 수 있도록 하기 위해서는 서버의 tcp 3306 번 포트가 방화벽에 막혀 있지는 않은지 확인해야 하며 만약 막혀 있을 경우 열어주어야 합니다. iptables -L 명령으로 차단/허용 리스트 조회가 가능합니다. 만약 포트가 막혀 있을 경우, # iptables -I INPUT -p tcp --dport 3306 -j ACCEPT 명령으로 열어주시면 됩니다.. 더보기