DATABASE 단위의 CHARACTER SET DATABASE의 CHARACTER SET 확인 mysql> show create database db_name; DATABASE의 CHARSET을 UTF8로 변경 ALTER DATABASE db_name CHARSET=UTF8; TABLE 단위의 CHARACTER SET TABLE의 CHARACTER SET 확인 mysql> show create table tbl_name; TABLE의 CHARSET을 UTF8로 변경 ALTER TABLE tbl_name CHARSET=UTF8; COLUMN 단위의 CHARACTER SET COLUMN의 CHARACTER SET 확인 mysql> show full columns from tbl_name; COLUMN의 C..
관계형 데이터베이스 초기화의 필요성 관계형 데이터베이스를 다루는 프로그램을 개발하다보면 DB에 여러 가지 테스트 데이터를 INSERT 하게 된다. 개발과 테스트가 완료되고 서비스를 오픈하기 전에는 기존의 테스트 데이터를 모두 삭제해야 할 것인데, 복잡한 제약조건을 설정했을 경우 이것이 생각보다 쉽지 않다. 예를 들어 삭제하고자 하는 데이터가 다른 테이블에 의해 참조되는 외부키일 경우 RDBMS 차원에서 데이터 삭제를 방지한다. 무결성 유지를 위하여 당연히 그렇게 되는게 옳지만, 데이터베이스를 완전히 초기화하려는 목적일 때는 제약조건을 일시적으로 해제할 필요가 있다. 제약조건 해제 방법 MySQL Workbench에서 다음과 같은 명령어를 실행해주면 된다. 제약조건 해제 SET FOREIGN_KEY_CHE..
사용자 계정에 대한 작업은 루트 권한을 필요로 한다. 사용자 추가CREATE USER 'user_id'@'host' IDENTIFIED BY 'user_password'; 권한부여GRANT SELECT, INSERT, DELETE ON db_name.* TO 'user_id'@'host'; host에서 접속한 user_id에게 SELECT, INSERT, DELETE 권한을 부여 GRANT ALL PRIVILEGES ON db_name.tbl_name TO 'user_id'@'host'; host에서 접속한 user_id에게 db_name.tbl_name에 대한 모든 권한을 부여 GRANT ALL PRIVILEGES ON *.* TO 'user_id'@'host'; host에서 접속한 user_id에게 ..