본문 바로가기

Coding/Etc120

MySQL Strict mode 해제하는법 컬럼의 사이즈보다 큰 값을 넣으려고 할 때 다음과 같은 에러를 보게 된다. ERROR 1406 (22001): Data too long for column MySQL은 5.7버전부터 기본적으로 Strict Mode가 적용되어 있다.위와 같은 에러를 보지 않으려면 이 모드를 해제해주면 된다.먼저 /etc/mysql/conf.d/ 경로에 disable_strict_mode.cnf 라는 이름으로 파일을 만든다.그리고 아래의 내용을 파일에 써준다. [mysqld]sql_mode=IGNORE_SPACE,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION sudo service mysql r.. 2017. 7. 3.
ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statement 오류해결 ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statement MySQL에서 into outfile을 사용하여 테이블을 csv파일로 저장하는 작업을 하던 중위와 같은 에러가 발생했다.이는 secure_file_priv 옵션때문에 발생한다.먼저 다음과 같은 명령어를 입력해본다. SHOW VARIABLES LIKE "secure_file_priv"; 아마 아래와 같은 결과가 나올 것 이다. +------------------+-----------------------+| Variable_name | Value |+------------------+-------.. 2017. 4. 20.
PDO 사용시 한글깨짐현상 해결방법 $conn = new PDO("mysql:host=$host;dbname=test", $user, $pass);기존에 위와 같이 DB접속 쿼리를 날린다면 아래와 같이 수정해주면 된다. $conn = new PDO("mysql:host=$host;dbname=test", $user, $pass, array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8")); 2017. 4. 13.
MySQL 데이터베이스 덤프(Dump) 및 복구 방법 MySQL 데이터베이스 덤프(Dump) 및 복구하는 방법에 대해 기술한다.mysqldump 를 이용할건데 맥에는 기본적으로 깔려있다. mysqldump -u[사용자아이디] -p 데이터베이스명 > 저장될 파일명 위 명령어를 입력하면 원하는 데이터베이스를 통째로 덤프떠준다. mysqldump -u[사용자아이디] -p 데이터베이스명 테이블명 > 저장될 파일명 위와 같이 입력하면 원하는 테이블만 덤프를 뜰 수 있다.다음으로 덤프뜬 파일을 이용하여 데이터베이스를 복구하는 방법이다. mysql -u[사용자아이디] -p [디비명] < 덤프파일명 여기에서 한가지 주의할점이 있는데 덤프뜨기전 데이터베이스 명이 test라고 가정한다면복구할 데이터베이스에서 미리 test라는 데이터베이스를 생성해줘야 한다는 점이다. 2017. 4. 12.
우분투(Ubuntu) APM(Apache+PHP+MySQL) 설치하는방법 우분투에서 APM(Apache+PHP+MySQL) 설치하는 방법에 대해 기술한다.서버 환경은 Ubuntu 16.04이고 PHP5.6 버전과 MySQL5.7버전을 설치할 것이다. sudo apt-get updateapt-get을 업데이트 해준다. sudo apt-get upgradeapt-get을 업그레이드 해준다. sudo apt-get install apache2아파치를 설치한다. sudo apt-get install php5PHP를 설치한다. 5버전이 익숙해서 5버전으로 설치하는데 아마 여기서 에러가 날 것이다.(Package 'php5' has no installation candidate 에러)이는 우분투16에서는 PHP7이 default이기 때문인데 아래의 포스팅을 참고하여 해결할 수 있다.ht.. 2017. 4. 12.
MySQL CSV파일 데이터베이스 테이블로 import 시키는 방법 MySQL에서 CSV파일을 데이터베이스의 테이블로 import 시키려면 아래와 같은 명령어를 사용하면 된다. LOAD DATA LOCAL INFILE '파일경로' INTO TABLE 테이블명 FIELDS TERMINATED BY ','; CSV파일의 경우 값을 ,로 구분하기 때문에 TERMINATED BY에 , 를 줬다.만약 입력하려는 값 중에 ,가 포함되어 있다면 해당 값을 더블쿼터(") 로 감싸주고ENCLOSED BY를 통해 명시해주면 된다. LOAD DATA LOCAL INFILE '파일경로' INTO TABLE 테이블명 FIELDS TERMINATED BY ',' ENCLOSED BY'"'; 2017. 4. 11.