본문 바로가기

Dev/MySQL

MySQL 외부접속 허용하기 mysql> GRANT ALL on 데이터베이스명.* to '유저명'@'외부IP' IDENTIFIED by '유저암호';cmd> net stop mysql (mysql 재시작)cmd> net start mysql 예시) GRANT ALL on *.* to 'kim'@'%' IDENTIFIED by 'password'; -> kim이라는 유저에게 모든 DB의 접속권한을 주겠다. 모든 외부 IP에서.. *윈도우 환경에서는 my.ini 파일을 건드리지 않아도 된다.*하지만 mysql의 포트번호(기본 3306)를 방화벽에서 예외처리 해주어야 한다. 참고: http://yadw.tistory.com/248http://cjw8349.blog.me/20150451502 더보기
SQuirreL SQL Client SQuirreL SQL Client (Freeware)Database GUI tool로 Oracle, MSSQL, MySQL, JavaDB 등에 공통적으로 사용할 수 있다. 단, 각 Database에 맞는 JDBC(Java DataBase? Connectivity)가 필요하다. cmd에서 설치하여야함. : http://www.squirrelsql.org/#installation MySQL 사용 : http://aladdin07.blog.me/150137276835 더보기
소문자를 대문자로 변환 후 저장 update 테이블명 set 필드명 = upper(필드값) where 조건식; 소문자-> 대문자: upper(user)대문자-> 소문자: lower(user) 더보기
can't create table (errno 121) errno 121 메세지는 어딘가에서 이미 사용하고 있는 CONSTRAINT를 더하려고 할 때 나타난다. 그러므로, CONSTRAINT는 반드시 DATABASE 내에서 UNIQUE 해야 한다는 것 !!!! http://blackbull.tistory.com/15 더보기
MySQL 외래키 설정 예시 Mysql에서 innodb 는 상용DB와 비슷한 기능들을 지원한다. 물론 아직도 지원하지 않는 기능이 많지만... 그럭저럭 쓸만하다. 다음은 그중 외래키 지원에 관한것이다. 외래키란 A, B 라는 테이블이 있을경우 A 테이블 Key 값을 참조하여 B 테이블에서 사용할때 B테이블의 Key를 외래키라고 한다. 참고로 A 테이블의 참조하는 키를 참조키라고 한다. 그러므로 A 테이블의 참조키와 B 테이블의 외래키값은 동일한 값이 들어간다. 그외 자세한 내용은 인터넷에 많으니 찾아보시고... ^^ 그러나 Web 쪽에서 Mysql 이 많이 사용되다 보니 거의 외래키를 사용할일이 없고.. 웹호스팅사에서도 거의 InnoDB는 잘 지원하지 않다 보니 자주 사용되지는 않는다. Mysql 서버를 독자적으로 쓰거나.. 또는 .. 더보기
DATETIME과 TIMESTAMP의 차이 지원되는 범위 DATE : '1000-01-01' ~ '9999-12-31'DATETIME : '1000-01-01 00:00:00' ~ '9999-12-31 23:59:59'TIMESTAMP : '1970-01-01 00:00:00' ~ '2037-12-31 23:59:59' 기본값 현재의 날짜와 시간의 사용 여부 : INSERT시 특별히 지정하지 않아도 자동으로 값이 적용가능?DATETIME : 사용불가TIMESTAMP : CURRENT_TIMESTAMP 사용 가능 ON UPDATE 구문으로 자동으로 값을 수정할 수 있나?DATETIME : 사용불가TIMESTAMP : 사용가능 테이블에서 같은 자료형이 둘 이상 있는 경우 특징은?DATETIME : 특별히 없다.TIMESTAMP : 기본값을 적용할 수.. 더보기
Warning: mysql_connect(): Connecting to 3.22, 3.23 & 4.0 is not supported. Warning: mysql_connect(): Connecting to 3.22, 3.23 & 4.0 is not supported. Server is 4.0.27 in 경로 에러메세지 발생시 http://www.phpschool.com/gnuboard4/bbs/board.php?bo_table=qna_function&wr_id=366283에서 답하는것 처럼. PHP의 낮은버전 사용 또는 MySQL의 상위버전 사용이다. 그런데 사내 다른 사람의 컴퓨터로는 같은 php파일이어도 접속에러가 안뜨고 잘되는데나만 에러가 뜨고, 버전의 차이는 마이너버전밖에 차이가 없어서 버전의 문제는 아니다라고 생각하고 php.ini나 mysql 설정을 건드려보다 결국 안되서 php를 5.4 버전에서 5.2 버전으로 다운시키니 .. 더보기
Mysql Error 1045 Windows에서 첫 설치시 암호를 설정하게 되면 root@localhost로 로그인할 권한이 없다면서 서비스 시작시 Error 1045를 내 뱉는다.검색결과 재설치를 하는것이 가장 좋은 방법이라고들 하지만 다른 방법도 있다는 것을 적고싶다. 우선 cmd 창을 열고 mysql 서비스를 중지시킨다. >> net stop mysql 비인증로그인이 가능하도록 mysql을 다시 실행시킨다. >> mysqld --skip-grant>> mysql -uroot mysql 이제 비밀번호가 없어도 root 권한으로 mysql을 사용할 수 있다.mysql DB를 열고 암호를 재설정한 뒤 권한을 부여한다. mysql> use mysql;mysql> update user set password=PASSWORD('1111').. 더보기
텍스트파일 데이터 테이블에 저장하기 LOAD DATA INFILE ' 파일경로' INFO TABLE '테이블명' FIELDS TERMINATED BY '구분자' 명령어를 이용하면 된다. (mysql 접속해서) insert 구문보다 빠르다고 한다. 참고1: http://www.superuser.co.kr/database/mysql/load-data-infile.htm참고2: http://promisej7.tistory.com/109 더보기
Auto_increment 의 사용 CREATE TABLE tb_name ( ; id 를 AUTO_INCREMENT 로 사용하겠다고 정의함. 꼭 기본키여야 설정가능. id int(10) NOT NULL AUTO_INCREMENT, PRIMARY KEY (id) ); mysql> INSERT INTO tb_name VALUES (0); # LAST_INSERT_ID 는 AUTO_INCREMENT 값을 입력 후 자동으로 생성된 값을 얻습니다. # 이 함수는 mysql_insert_id 와 동일한 기능을 합니다. # 만약, 성공적으로 입력된 열이 없다면 이 함수는 0 을 반환합니다. mysql> SELECT LAST_INSERT_ID(); -> 1 mysql> INSERT INTO tb_name VALUES (0); mysql> INSERT I.. 더보기