안녕하세요.


mysql start 했을 때 Starting MySQL. ERROR! The server quit without updating PID file(*.pid) 에러 문구가 떨어지면서 mysql 시작이 안된다면,


log를 확인 해본다.. 그런데 log 확인 하기 전에 mysql이 /tmp/{random} 폴더에 write를 하는 작업이 있는데 위 에러가 나오는 경우 10이면 9이 tmp의 권한

문제이기 때문에 ls -al /tmp 폴더의 권한을 확인한다.


만약 권한이 없을 경우 /tmp 폴더를 chmod 777 /tmp 로 변경 / 유저는 chown root.root /tmp 로 변경한 후 mysql 시작해보면 정상적으로 시작된다..



'mysql' 카테고리의 다른 글

Mysql 스케줄러 등록 방법  (0) 2021.05.13
mysql Memory DB 설정 및 성능 체크  (0) 2021.05.12
mysql 특정 테이블 dump 사용법  (0) 2017.07.05

안녕하세요.


php json_encode를 사용하면 한글은 유니코드로 보여지게 됩니다 \u....  이런식으로 말이죠.


그런데, 한글로 json을 output 내야할 때 JSON_UNESCAPED_UNICODE을 사용하면 됩니다.


사용방법은


$arr = array("안녕"=>"개발자");

json_encode($arr);     


output => 유니코드로 나오게 됩니다.


$arr = array("안녕"=>"개발자");

json_encode($arr,JSON_UNESCAPED_UNICODE );     


output => 정상적으로 한글로 나오게 됩니다.


그런데 php 버젼이 5.4 이하라면 JSON_UNESCAPED_UNICODE  옵션이 정상 작동을 안 하게 됩니다.

>>리눅스 상에서 php -version으로 확인 가능.


그렇다면 php버젼을 5.4로 업그레이드 하면 되겠죠?


업그레이드 방법입니다.


1. wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm && rpm -Uvh epel-release-latest-6.noarch.rpm

2. wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm && rpm -Uvh remi-release-6*.rpm

3. vi /etc/yum.repos.d/remi.repo

  >> [remi] 부분에 있는 enabled=0을 1로 변경 enabled=1

4. yum -y update php*

5. 업데이트 완료시 웹서버 재시작.

6. php -version 으로 5.4 확인


해당 업그레이드 방법은 CentOS release 6.5에서 진행하였습니다.


그런 다음 JSON_UNESCAPED_UNICODE  옵션을 사용하면 정상적으로 한글이 output 되는 걸 볼 수 있습니다.




안녕하세요.


웹서버를 apache에서 nginx로 변경했습니다.


변경하면서.. 404 not found, 502 bad gateway, many too redirect등등.. 이겨내고 얻어낸 설정값입니다.


코드이그나이터 프레임워크를 쓰기 위한 설정 알려드립니다.


server{

listen 8500 ssl; //listen port 입니다.

server_name localhost;

ssl on;

access_log /var/log/nginx/ssl_access.log main;

error_log /var/log/nginx/ssl_error.log warn;


#ssl 설정

ssl_certificate      /etc/pki/tls/certs/localhost.crt;

ssl_certificate_key  /etc/pki/tls/private/localhost.key;

ssl_session_cache shared:SSL:1m;

      ssl_session_timeout  5m;

ssl_ciphers  HIGH:!aNULL:!MD5;

      ssl_prefer_server_ciphers   on;


#웹서버 경로입니다

      root /var/www/html;

#웹서버로 처음 진입하면 이 세가지 확장자를 확인합니다. 우선순위는 처음부터 1,2,3

index index.html index.htm index.php;


location ~* \.(ico|css|js|gif|jpe?g|png)$ {

expires max;

add_header Pragma public;

try_files $uri /index.php;

}


#root location 설정

location / {

try_files $uri $uri/ @rewrites;

}    


#rewrites 설정 rewrite란 해당 규칙에 맞게 url 재작성을 해줍니다. 

location @rewrites {

          if (!-e $request_filename)

          {

              rewrite ^/(.*)$ /index.php/$1 last;

               break;

           }

      }


      #favicon.ico request off

      location = /favicon.ico {

          access_log off;

          log_not_found off;

      }

      location ~ /\. {

          access_log off;

     log_not_found off;

          deny all;

      }


#PHP Configs

fastcgi_intercept_errors on; 

location ~ \.php {

fastcgi_split_path_info ^(.+\.php)(/.+)$;

fastcgi_param PATH_INFO $fastcgi_path_info;

fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;


fastcgi_param QUERY_STRING $query_string;

fastcgi_param REQUEST_METHOD $request_method;

fastcgi_param CONTENT_TYPE $content_type;

fastcgi_param CONTENT_LENGTH $content_length;


fastcgi_param SCRIPT_NAME $fastcgi_script_name;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

fastcgi_param REQUEST_URI $request_uri;

fastcgi_param DOCUMENT_URI $document_uri;

fastcgi_param DOCUMENT_ROOT $document_root;

fastcgi_param SERVER_PROTOCOL $server_protocol;


fastcgi_param SERVER_SOFTWARE nginx;


fastcgi_param REMOTE_ADDR $remote_addr;

fastcgi_param REMOTE_PORT $remote_port;

fastcgi_param SERVER_ADDR $server_addr;

fastcgi_param SERVER_PORT $server_port;

fastcgi_param SERVER_NAME $server_name;


fastcgi_index index.php;

fastcgi_pass 127.0.0.1:9000;

}

}

+ Recent posts