[ 버터나이프 공식 홈페이지 ] 오늘은 findViewbyId와 OnClick 이벤트 처리의 번거로움을 줄여주는 버터나이프 라이브러리 사용법에 대해 쓰려합니다. ※물론 더 성능좋은 라이브러리인 DataBinding(구글에서 제공)이 있지만.. 여러 이유(XML 건드리기, MVVM패턴 비선호)로 인해 버터나이프를 쓰기로 했습니다. 1. 설치 1.1) 버터나이프 라이브러리 설치 그래들을 띄워 (build.gradle(Module: app)) dependencies 안에 implementation 'com.jakewharton:butterknife:8.8.1' annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1' 다음을 추가해주고 SyncNow 클..
참조사이트: Postgresql - tutorial + Tutorialspoint** 근데 어차피 Phpstorm써서 데이터베이스 관리할 건데... 굳이 이럴 필요성이 있나 싶기도 하고 1. 데이터베이스 만들기 TableSpace가 없을 때CREATE DATABASE 데이터베이스이름;TableSpace가 있을 때CREATE DATABASE 데이터베이스이름 TABLESPACE 테이블스페이스이름; 2. 데이터베이스 지우기 DROP DATABASE 데이터베이스이름; 3. 스키마 만들기 CREATE SCHEMA 스키마이름; 4. 스키마 지우기 스키마 지우기DROP SCHEMA 스키마이름; 스키마 및 해당 스키마와 관련된 모든 테이블들까지 지우기(주의!!) DROP SCHEMA 스키마이름 CASCADE; 5. 테..
psql 창에서, 사용되는 커맨드를 알아보고자 한다. ※ 참고: bash 창(psql이 깔린 경로, /var/lib/pgsql96)에서, cat .bash_profile 을 입력하면PGDATA=/var/lib/pgsql93/data 라고 뜬다.이 경로가 데이터베이스 저장 경로이다. 1. \db: 테이블스페이스(tablespace)를 보여준다. ※테이블스페이스란? - Mysql 과 MariaDB에서는 없는 개념이며, Oracle과 PostgreSQL에서만 존재하는 개념. - 일반적으로 데이터베이스는 지정된 장소에만 저장할 수 있으나, 테이블스페이스를 이용하면 아무 경로로 지정하여 데이터베이스를 저장할 수 있다. 따라서, DB를 확장하거나 HDD에서 쓰이든 DB를 SSD로 옮기게 함으로써 성능 향상을 꾀할 ..
AWS서버에 LEPP(LINUX, (E)NGINX, PHP, POSTGRESQL)을 모두다 설치하였으면, 이제 작업 툴인 Phpstrom과 연동시키자. phpstorm을 키고 새 프로젝트를 만든다. 1. 서버 저장소와 연결 phpstorm에서 만든 작업물들을 AWS에 설치된 내 서버에 올려야 한다. Tools -> Deployment -> Configuration... 클릭 왼쪽 상단에 + 버튼을 눌러 아무 이름으로 정해준다. Type은 AWS 인스턴스를 생성할 때, pem키를 발급 받았으면 SFTP로 설정해준다. SFTP host: 자신의 AWS 아이피Port: 22Rootpath: /usr/share/nginx/htmlUser name: ec2-user(LinuxAMI로 생성했기 때문, ubuntu ..
참조: Timeshift 개발자의 Github WIKI ※주의: CLI(Command-Line Interface) 환경에선 테스트 하지 않았습니다. (CLI 환경에서 사용방법을 보려면 클릭하세요.) 가상 머신인 VMWare PRO처럼 스냅샷을 지원하는 프로그램이 리눅스 내에는 없는지 살펴보던 중에 해당 기사에서 리눅스에 20종 이상의 백업 프로그램이 있는 걸 알았다. 그 중 Timeshift가 내가 가장 원하는 종류의 백업 프로그램 이었다. 설치를 하고 테스트를 진행 하겠다. 1. Timeshift 설치 준비 Timeshift를 설치하려면 직접 저장소를 받아도 되겠지만, 안정적으로 설치하기 위해서는 epel 저장소를 추가적으로 설치해야 한다. 이왕 하는김에 remi 저장소도 설치하자.(※ yum 저장소에..
저번에는 tar를 이용한 기본적인 백업 방법에 대해서 작성하였다. 이번에는 조금 더 세련되고 빠른 방법인 Rsnapshot을 사용하여 백업하도록 하겠다. 원래는 책에서도 봐서 익숙하고... 이미 CentOS에 내장되어 있는 rsync를 사용하여 백업을 진행하고자 했는데, rsync는 원격 서버 간 동기화용 이라고 해서... 백업으로도 쓰이지만, 인터넷에 Rsnapshot이 백업용으로는 더욱 좋다 하여 작성해본다. 1. Rsnapshot 설치 Rsnapshot을 설치하기 위해선 먼저 CentOS의 확장 저장소인 epel(Extra Packages for Enterprise Linux) 을 추가해야 한다. sudo yum install epel-release -y sudo yum install rsnapsh..
참조 사이트 서버를 사용하다 보면 원치 않게 데이터를 지우는 경우가 있을듯 하여.. 아예 시스템 전체를 백업하는 방식을 찾아보았다. rsync를 이용하거나, dump, dd를 사용한 여러가지 백업 방법이 있지만, 나는 가장 기본적인 tar 압축으로 백업과 복원을 진행하겠다. 백업 1. 터미널 창을 키고 root 로 이동. cd / 2. root 폴더 밑(전체)의 데이터를 모두 백업한다. ※다만, tar로 압축할 자신파일과, 백업할 필요가 없는(RAM에 저장되거나 tmp파일로만 남아있거나, 외부저장소(USB 등)의 자료이거나, 실행중인 프로세스에 대한 자료들) 즉, proc폴더, tmp폴더, mnt폴더, dev폴더, sys폴더, run폴더, media 폴더 등은 필요가 없고, 확장자가 .cache, .gv..
안드로이드에서 녹화된 영상을 스트리밍 서버로 전송하여 여러 사람들이 볼 수 있는 어플을 개발하고 싶다. 어제까지는 서버 구축을 하기 위해서 여러 삽질을 했었고, 오늘은 클라이언트(안드로이드 단말기) 에서 서버로 어떻게 영상을 보내는지 살펴보았다. 나는 Nginx서버엔진에 rtmp-module을 설치하여 미디어 서버를 만들었기 때문에, rtmp프로토콜을 이용하여 서버로 전송해야 한다. 하지만, rtmp프로토콜은 안드로이드에서 지원하지 않으며, 카메라 녹화 방법조차 모른다. 더군다나 그걸 쪼개서 서버에 전송해야 하다니... 나는 ExoPlayer만 있으면 다 해결될 줄 알았다. 멍청했다. 애초에 Player를 영상 녹화하는 거라고 착각을 했으니... 여러 사이트들을 다시 찾아본 결과, JavaCV와 FFmp..
필요한 준비물::OBS STUDIO, 다음 팟 플레이어 OBS STUDIO: https://obsproject.com/ 다음 팟 플레이어: https://tv.kakao.com/guide/potplayer 두 개를 다운받고, 설치를 끝내자. ※ 웹캠이 있거나, 노트북에 카메라가 내장 되어 있어야 함! 1. OBS STUDIO를 실행시키고, 소스 목록 밑의 + 버튼을 눌러 비디오 캡쳐 장치를 눌러 확인 한다. 2. 제어 탭의 설정 버튼 클릭 3. 방송 탭에서 방송 형식: 사용자 임의 방송 서버 URL : rtmp://자신의AWS아이피/live스트림 키: 아무거나 가능(나는 test로 했다.) ※live는 nginx.conf 파일 안에 rtmp { }필드 안에 있는 application live를 가리킴 4..