본문 바로가기

개발 관련 지식/MySQL

[MySQL] 백업 및 복구 * 백업 및 복구 1. MySQL 백업 1) mysqldump 명령어* 전체 Database 백업 mysqldump -uroot -p -A > [백업 받을 파일명].sql * 특정 Database 백업 mysqldump -uroot -p [DB명] > [백업 받을 파일명].sql * 특정 테이블 백업 mysqldump -uroot -p [DB명] [테이블명] > [백업 받을 파일명].sql [참고] -A, --all-databases : 모든 DB 덤프-B, --databases : 특정 DB를 덤프 --opt : 버퍼링을 비확성화 하고, 많은 데이터를 덤프에 있는 소량의 SQL구문에 기록해 더효율적으로 동작하다록 한다.--lock-alltables : 전역적으로 일관된 백업을 만들도록 "FLUSH TA.. 더보기
[MySQL] MySQL 버전 5.5 이상 소스 설치(리눅스) * MySQL 버전 5.5 이상 소스 설치(리눅스) OS: Linux [장비명] 2.6.18-194.el5 #1 SMP Tue Mar 16 21:52:39 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux기존 MySQL : Server version: 5.0.95-log Source distribution 다른 MySQL 의 DB를 내가 사용하는 장비로 옮겨와야 하는 상황..하지만 MySQL 버전이 달라 mysqldump 로 옮겨지지 않는 상황이 발생하였다.위와 같이 이미 MySQL 이 설치되어 있는 상황..추가로 MySQL 을 설치하기 위해서는 소스로 설치해보기로 결정..설치할 MySQL : Server version: 5.6.15-enterprise-commercial-advan.. 더보기
[MsSQL] MsSQL 함수 정리(문자열 합치기 등등..) * MsSQL 함수 정리(문자열 합치기 등등..) - 문자열 합치기 => 컬럼1+컬럼2 [as명] ex) test1: 111, test2: 222 => select test1+test2 test from test; => 검색 결과 : 111222 - 조건 함수(case문) => CASE WHEN [조건1] THEN [출력 데이터1] WHEN [조건2] THEN [출력 데이터2] ... ELSE [출력 데이터] END AS [부여할 컬럼명] ex) select case when t_num = 1 then '테스트1' when t_num = 2 then '테스트2' else '그외' end as t_flag from t_table; => 검색 결과 : t_num=1 => 테스트1 / t_num=2 => 테스.. 더보기
[MySQL] MySQL 함수 정리 * MySQL 함수 정리 * String 함수 - CONCAT(컬럼1, 컬럼2) : 컬럼1, 컬럼2를 합친다 ex) test1 = '1', test2 = '2' / concat(test1, test2) => '12' 더보기
[MySQL] 데이터 csv 파일로 다운로드 방법 * 데이터 csv 파일로 다운로드 방법 - 첫번째 방법 1) db 접속 2) 아래 명령어를 통해 csv 파일로 다운로드 select [다운 받을 컬럼명] into outfile "[경로/파일명.csv]" fields terminated by '[컬럼 구분자]' lines terminated by '[row 구분자]' from [테이블명]; ex) select * into outfile "/export/home/test.csv" fields terminated by '^' lines terminated by '\n' from gcm_db.gcm_hist; [주의사항] 경로에 대한 권한이 db 유저에 존재해야 다운로드가 가능하다. 더보기
[MySQL] MySQL 사용 방법 * MySQL 사용 방법 - 접속 방법 mysql -u[user명] -p[패스워드] [db명] - root 계정에서 접속했을 경우 1) show databases => db 확인 2) use [db명] 더보기
[MySQL] 테이블 생성, 삭제, 수정 및 데이터 조회, 추가, 수정 * 테이블 생성, 삭제, 수정 및 데이터 조회, 추가, 수정 - 테이블 생성, 삭제 1. 생성 CREATE TABLE 테이블명( 컬럼명 자료형 [NOT NULL] [AUTO_INCREMENT | DEFAULT '값'], 컬럼명 자료형 [NOT NULL] [AUTO_INCREMENT | DEFAULT '값'], ... [PRIMARY KEY (컬럼명)] ); [​NOT NULL] : NULL 값을 허용할 지 여부 [AUTO_INCREMENT] : 자동적으로 1씩 증가, 해당 속성이 적용된 컬럼은 무조건 PRIMARY KEY 설정을 해주어야 한다. [DEFAULT '값'] : 데이터 입력시 기본적으로 들어가는 값을 경정하며 AUTO_INCREMENT 와 같이 사용할 수 없다. [PRIMARY KEY(컬럼명).. 더보기
[MySQL] MySQL 인덱스(index) 생성 * 인덱스(INDEX) 생성 - 인덱스 생성 1. CREATE INDEX ON (컬럼명1, 컬럼명2, ...); 2. CREATE TABLE( .... INDEX (컬럼명1, 컬럼명2, ...) ); 3. CREATE TABLE( ... UNIQUE INDEX (컬럼명) // 항상 유일해야 함 ); 4. ALTER TABLE ADD INDEX (컬럼명1, 컬럼명2, ...); - 인덱스 조회 SHOW INDEX FROM ; - 인덱스 삭제 ALTER TABLE DROP INDEX ; 더보기
[MySQL] Oracle 과 데이터타입 비교 * Oracle 과 비교 - 데이터 타입 MySQL Oracle int(11) varchar(30) char(30) tinyint smallint mediumint int integer bigint double bit blob date datetime decimal double double precision enum float longblob longtext mediumblob mediumint mediumtext numeric real set text time timestamp tinyblob tinyint tinytext year number(11) varchar2(30) char(30) number(3) number(5) number(8) number(10) number(10) number(20) .. 더보기
[MySQL] MySQL 실행(Start) 및 종료(Shutdown) * MySQL 실행(Start) 및 종료(Shutdown) * MySQL 실행(MySQL 5.5 기준) [MySQL 실행 명령어] mysqld start [참고] bin 디렉토리로 이동하여 실행하여야 한다.(리눅스의 경우, /etc/rc.d/init.d 내에 존재) * MySQL 실행 확인(MySQL 5.5 기준) [MySQL 실행 확인 명령어] mysqladmin -u root -p ping 패스워드 입력 => mysqld is alive 가 뜨면 정상 * MySQL 종료(MySQL 5.5 기준) [MySQL 종료 명령어] mysqladmin -u root -p shutdown 패스워드 입력 더보기