문자셋 설정(utf8) MySQL

목표 환경은 DB를 utf8로 설정하는것임
기본적으로 table 속성은 DataBase 설정을 따라가는데
입력 데이터가 깨지면 아래 3번의 조치를 취한다. (AIX이런 경우를 봤다.)

0. 데이터를 콘솔에서 밀어넣을때는 콘솔 환경이 utf8이어야 함

# export LC_ALL=KO_KR.UTF-8
# export LANG=KO_KR.UTF-8


1. MySQL 접속 시 status명령으로 문자셋 확인
   utf8이 아닐 때 설정하는 방식임

mysql> status;
Server characterset:    utf8
Db     characterset:    utf8
Client characterset:    utf8
Conn.  characterset:    utf8

2. my.cnf 환경설정

[mysqld]
default-character-set=utf8
init_connect=set collation_connection=utf8_general_ci
init_connect=set names utf8
character-set-server=utf8
collation-server=utf8_general_ci

[mysqldump]
default-character-set=utf8

[mysql]
default-character-set=utf8

3. table 생성시 DEFAULT CHARSET설정

CREATE TABLE `TABLE_NAME` (
  `seq_user` int(10) unsigned NOT NULL auto_increment,
  `userid` varchar(30) NOT NULL default '',
  PRIMARY KEY  (`seq_user`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

auto_increment 갱신 MySQL

오직 믿을 것은 문서다.

mysql> ALTEER TABLE 테이블명 AUTO_INCREMENT = 100;







root 비밀번호 초기화 MySQL

어쩌다 써먹는데 기억이...가물가물

# killall mysqld

# ./mysqld_safe --skip-grant&

# ./mysql -u root -p 
비밀번호 : Enter

mysql>use mysql;
mysql>UPDATE user SET password=password('passwd') WHERE user='root';
mysql>flush privileges;    
mysql>FLUSH PRIVILEGES;

# ./mysqld_safe &

파티셔닝 테이블 삭제 PostgreSQL

파티셔닝은 기본 테이블 정보 삭제 시 table space size가 그대로 유지되어
해당 테이블을 drop하여 디스크 사이즈를 늘리는 효과적인 방법이다.
이렇게 만든 파티셔닝 테이블을 삭제하는 방법이다.

drop table 테이블이름 CASCADE;

PC CPU, Memory등 하드웨어 정보 보기 (윈도우용) 좋은 소프트웨어

가끔 본인이 사용하는 PC의 하드웨어의 좀 상세 스펙을 확인할 경우가있다.
이럴때 유용한 프로그램이다.



첫 라인 추가하기 Perl/Shell/Python

특정 파일의 첫 라인에 뭔가를 추가하고싶은데
좀 효율적인 방법이없을까?
아래의 두가지를 생각할 수 있다.

펄을 통한 첫 라인 추가
perl -i~ -0777pe's/^/New first line\n/' file_name.txt

sed를 통한 첫 라인 추가
sed '1s/^/New first Line\n/' fine_name.txt > new_file.txt

작지만 행복을 준다. ^-^

IP로 hostname 알아내기 도움자료


오라클 정렬하여 출력하기 Oracle

터미널의 표시 라인을 조절하여 보기좋게 한다.

SQL> set lines 300;
SQL> select * from tables_name;

1 2 3 4 5 6 7 8 9 10 다음