MySQL 의 root 사용자 암호 바꾸기

MySQL 의 root 사용자 암호 바꾸기

=======================================================

MySQL 초기 설치시 관리자 암호는 설정 되어져 있지 않다.실질적으로
서비스 할경우엔 반드시 관리자(root) 암호를 설정해야 한다.

root 암호 설정하는 방법에는 3가지가 있다.

1. UPDATE 문 이용하기
2. SET PASSWORD 이용하기
3. mysqladmin 이용하기

▶ UPDATE 문 이용하기

$ mysql -u root mysql

mysql> update user set password=password(‘new-passwd’) where user=’root’;
mysql> flush privileges;

update 문 이용하여 암호를 변경할땐 꼭 flush privileges; 를 실행
하여 변경된 내용을 적용해야 한다. MYSQL 에서 사용자 권한에 관한
내용은 MYSQL 실행시 메모리에 불러놓고 이용되는데 이에 관해 변경
된 내용이 있을땐 반드시 서버에 변경된 내용을 갱신하라는 명령을
전달해야 한다.

▶ SET PASSWORD 이용하기

mysql> set password for root=password(‘new-passwd’);

이 방법은 flush privileges 가 필요 없다.

mysqladmin 이용하기

root 암호 초기 설정 시 :

$ mysqladmin -u root password new-passwd

root 암호 변경 시 :

$ mysqladmin -u root -p password new-passwd
Enter password:

MySQL 튜닝에 관하여

1.반드시 컴파일 하라! 10-30% 속도 향상 !

소스를 가지고 컴파일 하세요. MySQL 메뉴얼에 따르면 10-30% 속도가 빠르다고 합니다.
RPM 이나 바이너리 설치를 하지 마세요 !

1-2.최신 버전을 사용하라

최신 버전이 좋은 점은 자동 튜닝 하는 것 입니다.
버그를 수정 하구요. 되도록 이면 최신 버전을 사용하세요 !!
현재 3.23.49 입니다.

2. HEAP 테이블이 가장 빠르다!

일반적으로 가장 많이 쓰이는 테이블 타입은 MyISAM 타입 입니다.
MyISAM 타입은 무자게 빠르며, 대용량에도 강합니다. 그러나 트랜잭션은 지원되지 않습니다.
이노디비(InnoDB) 는 트랜잭션이 지원 됩니다. 쇼핑몰에서는 반드시 사용해야 합니다 ^^

HEAP 테이블 타입은 가장 빠르며, 단점은 메모리에 있기 때문에, MySQL에 중지 될 경우 모두 날아 갑니다.
검색을 하고 재검색을 다시 하는 경우, 임시 검색 테이블을 만들어 놓는 것도 좋은 방법입니다. Continue reading “MySQL 튜닝에 관하여”

mysql 컬럼

mysql의 컬럼은 종류가 다양합니다. 그래서 보기 쉽게 아래 표를 만들어 보았습니다.

Type Option (B)-최대표시, (F)-소수점이하자릿수
———————————————————————————————————————
TINYINT 정수형(-128~127), (B), [UNSIGNED]-정수형(0~255)
SMALLINT 정수형(-32768~32767), (B), [UNSIGNED]-정수형(0~65535)
MEDIUMINT 정수형(-8388606~8388607), (B), [UNSIGNED]-정수형(0~16777215)
INT 정수형(-2147483648~2147483647), (B), [UNSIGNED]-정수형(0~4294967295)
INTEGER INT와 동일
BIGINT 정수형(-9223372036854775808~9223372036854775807), (B),
[UNSIGNED]-정수형(0~18446744073709551615)
FLOAT(정밀도) 부동소수점실수, (정밀도)-“(4,8)”, (4)-단정도
부동소수점실수, (8)-배정도 부동소수점실수, 범위는 FLOAT, DOUBLE과 같습니다.
FLOAT(L, F) 단정도 부동소수점 실수, (B,F), (-3.402823466E+38 ~ 1.175494351E-38, 0,
1.175494351E-38 ~ 3.402823466E+38)
DOUBLE 배정도 부동소수점 실수, (B,F), (-1.7976931348623157E+308 ~ -2.2250738585072014E-308,0,
2.2250738585072014E-308 ~ 1.7976931348623157E+308)
DOUBLE PRECISION~REAL PRECISION(B,F), REAL(B,F) DOUBLE와 동일
DECIMAL 부동 소수점 실수 CHAR 형태로 동작, (B,F), F가 0이면 소수점이하는 저장되지 않습니다.
범위는 DOUBLE와 같습니다.
NUMERIC ECIMAL과 동일
DATE 날짜형(1000-01-01 ~ 9999-12-31)
기본타입 – YYYY-MM-DD
DATETIME 날짜와 시간형(1000-01-01 00:00:00 ~ 9999-12-31 23:59:59)
기본타입 – YYYY-MM-DD HH:MM:SS
TIMESTAMP 타임스템프형(1970-01-01 ~ 2037년 임의 시간),
(B) – (14,12,8,6) B 값이 없을 경우 INSERT, UPDATE시 동작된 시간으로 자동적으로 저장됩니다.
기본형식 – YYYYMMDDHHMMSS, YYMMDDHHMMSS, YYYYMMDD,YYMMDD
TIME 시간형(-838:59:59 ~ 838:59:59) 기본형식 – HH:MM:SS
YEAR 년도형(1901 ~ 2155, 0000)
CHAR 고정폭 문자열, (B) – (1~255) B 만큼 오른쪽으로 공백 채워 저장 출력 시 공백은 출력안됨,
[BINARY] – 검색 시 대소문자 구분
VARCHAR 가변폭 문자열, (L) – (1 ~ 255) 문자열 공백이 제거된 후 저장,
[BINARY] – 검색 시 대소문자 구분
TINYBLOB / TINYTEXT BOLB, TEXT형, 최대길이 255문자
BLOB / TEXT BOLB, TEXT형, 최대길이 65535문자
MEDIUMBLOB / MEDIUMTEXT BOLB, TEXT형, 최대길이 16777215문자
LONGBLOB / LONGTEXT BOLB, TEXT형, 최대길이 4294967295문자
ENUM 문자열 목록형, 최대 65535개, 저장된 문자열 목록 중에 오직 한가지만 얻을 수 있습니다.
SET 문자열 목록형, 최대 64개, 저장된 문자열 목록 중에 0, 1개 이상을 얻을 수 있습니다.
———————————————————————————————————————

10. MYSQL 주요함수
여기서는 mysql에 사용되는 중요한 몇 가지 기본 함수들을 소개하겠습니다. 대부분의 함수가 php와 연관하여 비슷한 것들이 많이 있습니다. php에서 만약 이 함수를 사용하려면 mysql query 문을 이용하는 방법도 있습니다. (여기서의 설명은 직접 local에서 접속해서 하는 것보다 클라이언트에서 telnet으로 접속해서 사용한 예를 더 많이 들었습니다.) Continue reading “mysql 컬럼”