🥇Home
MYSQL 복구
회사 직원의 실수로 Mysql 을 특정 DB를 날렸다. 결국 복구는 했지만 백업화일을 만들어 두지 않아서 나름 귀찮고 힘든 과정이었다. 그래서 mysql 를 날렸을때 복구하는 방법을 간단하게나마 설명하고자 한다. root 계정으로 작업하고 /usr/local/mysql 을 기본 디렉토리로 본다는 가정하에.. ^^ mysqldump를 이용한 백업화일이 존재하는 경우 /usr/local/mysql/bin/mysql -u root -p < BackUp.sql 가장 쉽게 복구하는 방법이다. 하지만 이 경우 문제점이 있다. Cron 등의 프로그램으로 매일 백업을 받는다고 하더라도... 백업받은 시점과 DB를 날린 시점에서의 데이터는 다를수 있기 때문이다. 그런 부분을 커버 할수 있는것이 binlog 이다. 원래 ..
PHP 메모리 부족 (PHP Fatal Error: Allowed memory size of)
서버 램이 넉넉잡아 16기가 정도 남았다고 해봅시다. memory_limit이 128MB(기본값)이라면 섬네일 생성이 필요한 페이지를 동시에 100명이 요청해도 됩니다. (128MB × 100 = 12.8GB) memory_limit이 512MB이라면 섬네일 생성이 필요한 페이지를 동시에 50명만 요청해도 서버가 다운됩니다. (512MB × 50 = 25.6GB) 즉 서버에서 안정적으로 처리할 수 있는 동접수에 큰 차이가 생기고, 악의를 가진 사용자가 일부러 대용량 이미지를 첨부한 후 동시에 다수의 섬네일 생성을 요청하여 서버를 마비시킬 수 있는 취약점도 발생합니다. PHP Fatal Error: Allowed memory size of 134217728 bytes exhausted (tried to a..
미들웨어 개념 및 종류
https://dbrang.tistory.com/693 /******************************************************************************************** -- Title : 미들웨어 개념 및 종류 -- Reference : blog.naver.com/swinter8 -- Key word : ********************************************************************************************/ n 개 념 : 일반적으로 미들웨어란 개념은 의미상 뿐만 아니라, 기능, 제품 등을 고려할때, 광범위하다. 굳이 개념상 정리를 하자고 하면, 미들웨어란 “클라이언트와 서버 간의 통신을 ..
Apache log에 favicon.ico 출력 제거
1. 개요 1) favicon의 정의 - favicon이란, favorite + icon 의 합성어 - 즐겨찾기를 할 경우 즐겨찾기 목록 좌측의 아이콘을 등록할 때 쓰임/ - 한글로 "파비콘"이라고 칭함 - 즐겨찾기를 수행할 때, Default로 찾는 파일임(소스상에서 다른 지정을 안할 경우) Web Server를 운용하다 보면.. errorlog에 아래와 같은 로그가 남기는 것을 볼 수 있다. favicon은 즐겨찾기 등록시에 옆에 보이는 아이콘이다. 소스상에서 따로 코딩하지 않으면 자동적으로 해당 Docroot의 Root디렉토리에서 찾는다. 아래의 경우, /home/monitor/webapps 경로는 물리적 소스 경로이다. 사실상, 별로 중요치 않은 로그이기 때문에 안 쌓이게 하는 것이 좋다. ===..
[Linux] 기존 구성 된 LVM 용량 늘리기
기존 운영중인 LVM에 신규 디스크를 추가하여 LVM에 디스크 용량을 증가할 수 있습니다. 디스크 추가 및 PV 설정 LVM에 추가할 Disk를 마운트 합니다. $> sudo fdisk -l Disk /dev/sdd: 10.7 GB, 10737418240 bytes 64 heads, 32 sectors/track, 10240 cylinders Units = cylinders of 2048 * 512 = 1048576 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disk identifier: 0x00000000 fdisk를 통해 신규로 추가된 Disk..
팀뷰어 상업적 해결
출처 : https://blog.naver.com/vkxld133/220886588116 팀뷰어의 경우 원격을 한 만큼 팀뷰어의 임시폴더에 로그가 남아 팀뷰어를 다시 실행시켜도 원격한 아이디가 그대로 남아있습니다. 라이센스 만료를 판단 해서 차단하는 로직(알고리즘)은 원격한 아이디의 로그가 얼만큼인지를 판별하여 팀뷰어를 사용하고 있는 자신의 아이피에 대해 1차적으로 상업적 의심을 띄우게 되며 여기서 일정 수준을 넘을 경우 2차적으로 라이센스 만료로 넘어가서 아이피를 차단 시키는 구조로 되어 있는 것으로 알고있습니다. 밑에있는 방법은 팀뷰어를 완전히 지운 후 맥주소를 변경해 아이피를 변경하여 처음 설치했을때의 모습으로 돌리는 과정입니다. -----------해결방법 구분선 ------------- 첨부파일..
MYSQL 초기 패스워드 및 설정파일 위치
mysql 초기 패스워드 /root/.mysql_secret 초기 설정파일 cp -arp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf 또는 /etc/my-default.cnf
[Linux] Process의 대한 Thread 정보 확인
ps 명령어 옵션 – 'e' or 'A' : 모든 프로세스 선택 – 'f' or 'F' : 보여질 수 있는 모든 정보 출력 – 'L' : 스레드 정보인 LWP / NLWP 출력 – 'T' : thread를 보여준다. SPID 출력 (SPID = LWP, TID) #사람들이 ps -ef 를 많이 쓰는 이유 추가정보 – PID(Process ID) : 프로세스의 아이디 – PPID(Parent Process ID) : 부모 프로세스의 아이디 – LWP(Light Weight Process, is thread) : 스레드 고유아이디 – NLWP(Number Light Weight Process) : 해당 프로세스에서 동작하는 스레드의 총 갯수
국내 ISP DNS 정보
국내 인터넷망을 관리하는 통신사, 즉 ISP 사업자별로 대표 DNS 가 등록되어 있다. 간혹가다가 자동으로 할당받는 DNS 정보가 잘못되어 인터넷 연결이 안 될 수가 있다. 이런경우를 위해 DNS 정보를 임의로 입력해준다. 아래는 국내에서 대표적으로 사용하는 통신사별 DNS 정보이다. KT 기본 DNS 서버 : 168.126.63.1 보조 DNS 서버 : 168.126.63.2 SK 기본 DNS 서버 : 210.220.163.82 보조 DNS 서버 : 219.250.36.130 LG 기본 DNS 서버 : 164.124.101.2 보조 DNS 서버 : 203.248.252.2 Google 기본 DNS 서버 : 8.8.8.8 보조 DNS 서버 : 8.8.4.4
wget
리눅스 환경에서 인터넷 파일을 다운로드 할 경우 가장 많이 쓰이는 방법은 wget 명령어를 사용하는 것이다. 1. 단일 파일 받기 $ wget [URL] 다운로드 하는 동안 진행 경과와 함께 다음의 정보를 보여줌 - 현재 몇 퍼센트 다운 받았는지에 대한 정보 - 현재 다운로드 받은 바이트 수 - 현재 다운로드 속도 - 다운로드 완료까지 남은 시간 2. 다른 이름으로 저장하기 wget은 기본적으로 다운로드 경로의 마지막 슬래쉬('/') 다음에 오는 단어를 파일이름으로 사용합니다. 그런데 위 방법은 이상한 이름으로 저장이 됩니다. ex) wget http://serverstudy.tistory.com/abc[2][3][4].txt 라고한다면 저장된 파일이름은 abc[2][3][4] 가 됩니다. 그렇기 떄문에..
소스파일들
목적 : 자동설치 script 작성중 나중에 좀더 편하게 파일을 받기위하여 블로그에올림 출처 : apache : httpd.apache.org apr : apr.apache.org apr-util : apr.apache.org pcre : ftp.pcre.org
kernel : martian source
kernel: martian source xxx.xxx.xxx.xxx from xxx.xxx.xxx.xxx , on dev eth0 kernel: ll header: 00:1e:67:xx:xx:xx:xx.... 위 메세지는 잘못된 IP 로 보내지는 Packet이 discard됨을 방화벽에서 알려주는 메세지 위 메세지가 보고싶지 않다면 아래과 같이 수정 echo "0" > /proc/sys/net/ipv4/conf/eth0/log_martians
[Linux] CPU 개수 확인 및
가상코어 개수 : grep -c processor /proc/cpuinfo cpu당 물리코어 개수확인 : grep "cpu cores" /proc/cpuinfo | uniq 물리 cpu 개수 : grep "physical id" /proc/cpuinfo | sort | uniq | wc -l 가상코어개수가 cpu물리코어 갯수보다 크다면 하이퍼스레딩기능을 사용하고있는것.
[Linux] 리눅스 파일시스템 점검관련
EXT4 filesystem을 생성시, mount 28회 또는 180일 마다 file system 검사를 한다. Mount Time에 도달하면 booting 시 fsck가 자동으로 수행되는 상황이 발생되는 것은 정상으로 필요시 이 값을 변경하여 주기를 조정 Check Interval에 도달하면 booting 시 fsck가 자동으로 수행되는 상황이 발생되는 것은 정상으로 필요시 이 값을 변경하여 주기를 조정 이 설정을 tune2fs -c 또는 -i 명령으로 바꿀 수 있다. tune2fs -c 0 /dev/sda1 tune2fs -i 0 /dev/sda1 tune2fs -l /dev/sda1
sed 명령어
ed명령어와 grep명령어 기능의 일부를 합친 것이 sed(stream editor)명령어 sed -n '56,60p' /root/dh : dh파일에 56~60번째까지 출력 sed -n '/abc/p' /root/dh : dh파일을 한줄씩 읽으면서(-n : 읽은 것을 출력하지 않음) abc 문자를 찾으면 그 줄을 출력(p)한다. -n : 읽어들인 라인 출력안함 ex ) 파일을 한줄씩 읽으면서(-n : 읽은 것을 출력하지 않음) 56,60 번째 줄을 출력(p)한다. -p : - n 옵션하에 있을지라도, 라인을 프린트한다 -n 옵션 sed는 항상 표준 출력에서 입력 받은 각 라인을 나타낸다는 것을 알아냈다. 그러나 때때로 한 파일로부터 몇 개의 라인들을 추출해 내기 위해 sed를 사용하기를 원할 때도 있다...
로드밸런싱 과 클러스터링 차이
로드밸런싱은 하나의 서버에 사용자가 많이 몰릴 경우 로드를 분배할수있음 로드밸런싱해주는 소프트웨어 혹은 하드웨어 장비를 로드밸런서 라고함 오픈소스 로드밸런서중 많이 사용되고있는것은 HAProxy 다 네트워크 상단에 로드밸런서가 존재하여 서버로 들어오는 패킷을 실제서버로 균일하게 트래픽을 부하 분산시킨다. 만약, 실제서버 중 정상적으로 작동하지 않는 경우, 이를 감지해 정상적으로 작동하는 서버로 부하 분산시킨다. 클러스터 뜻은 여러대의 서버를 하나의 서버처럼 작동하게 하는 기술을 말한다. 클러스터링이란 VIP 기반으로 구현되며 실제장비는 physical ip 를 가지고 데이터처리는 vip를 통해 처리하며, 특정장비나 특정어플리케이션에 문제가 생기면 failover 된다 failover 란 즉 fail이 되..
CentOS6 Heartbeat
본 설치는 Centos6 로 테스트 하였습니다. ha.cf : 하트비트 기본설정파일 haresources : 공유할 자원 및 스크립트 정의 authkeys : 인증방식에 대한 정의 default 파일 : /usr/share/doc/heartbeat iptables 80포트 open ## test2 는 index.html test2로 수정하여진행 ## vi /var/www/html/index.html test1 ## heartbeat 설치 후 heartbeat 설정파일로 복사## yum -y install heartbeat* rpm -qa heartbeat -d (설치 경로확인) cp /usr/share/doc/heartbeat-3.0.4/ha.cf /etc/ha.d/ cp /usr/share/doc/he..
[Linux] Bonding
본딩(Bonding) 이란? 여러 NIC를 하나로 묶어 네트워크 대역폭을 늘리거나 네트워크 이중화 를 구성 할 수 있는 기술 VMware 로 테스트 진행하였으며 Centos7 에 구성하였다. DEVICE=bond0 : 장치명 BOOTPROTO=static : 고정 IP ONBOOT=yes : 부팅 또는 network 스크립트 실행시 자동시작 IPADDR : IP NETMASK=255.255.255.0 : 넷마스크 BONDING_OPTS="mode=1 miimon100 primary=ens33" : 본딩 옵션 mode=1 Active backup 모드 miimon=100 : 네트워크 감시주기 100은 0.1초 primary=ens33 : Active가 되는 인터페이스 MASTER=bond0 : bond0에..
FTP 서버 | Active모드와 Passive모드
FTP 서버는 파일을 교환하기 위한 프로토콜인 FTP를 사용할수 있는 서버. FTP 서버--------FTP 클라이언트 가 있어야 업로드 or 다운로드가 가능하다. Centos 는 기본으로 vsftpd 를 제공하며 vsftpd(Very Secure FTP) 는 이름 그대로 보안을 강조한다. 물론 vsftpd 를 설치하지않아도 SFTP 로 사용 가능하다. FTP 기본포트는 20번(데이터전송), 21번(제어연결) 포트가있으며 FTP서버와 FTP클라이언트 사이에 2개의 연결을 가진다. 제어연결은 FTP 명령어 및 서버의 응답코드를 전송하기 위한 목적이며 데이터연결은 파일 전송 및 서버에서 파일 및 디렉토리 리스팅(ls 등) 된 자료를 전달할때 사용된다 제어연결과 데이터연결이 분리된 이유는 파일을 효율적으로 전..
echo 출력 내용 색상 변경
echo 옵션은 다음과 같다. -e : 문자열에서 역슬래시(\)를 만나면 특수 문자로 처리 ex ) echo -e "Hello\nWorld" 많이 쓰이는 색상은 31m(Red) ~ 36m(Bluegreen) echo -e "\033[0m" -> Original echo -e "\033[31m" -> Red echo -e "\033[32m" -> Green echo -e "\033[33m" -> Yellow echo -e "\033[34m" -> Blue echo -e "\033[35m" -> Purple echo -e "\033[36m" -> Bluegreen ex ) echo -e "\033[33m"Test"\033[0m" ex ) echo -e "\033[33;1m"Test"\033[m" # 세미콜론..