본문 바로가기

개발

[MariaDB] 마리아DB slave , 복제(Replication) 구성하기 master - slave 를 구성해야 하는 이유가 뭘까요?크게 두가지로 볼 수 있을듯 합니다.1. 나름 백업2. 분산처리( 쓰기는 마스터만, 읽기는 슬레이브에서만 )분산처리란 결국 안정성 향상이라고 볼수도 있겠죠~ 이글의 작성 기준은 아래와 같습니다 MasterUbuntu 12.04 Server ( IDC / 한국 )MariaDB 5.5.44 slaveUbuntu 14.04 Server ( AWS / 일본 )MariaDB 5.5.44 1. Master 설정 1-1. my.cnf 설정 변경# vi /etc/mysql/my.cnf[mysqld] 에 아래 내용 추가 # master sertting server_id = 1 log_bin = mysql.bin 1-2. 사용자 추가# mysql -uroot -p.. 더보기
[Baas] Android Push 서비스 구성하기 #1 - Parse를 이용한 Push(GCM) 수신하기 많은 Android 개발자 및 서버개발자분들이 고민하시는게 푸쉬서버를 구지 만들어야 할까? 어디 쓸만한 서비스 없을까? 입니다푸쉬서버 및 푸쉬발송 시스템(관리자)등을 구축하는건 어려운건 아니지만 손이 많이가죠 안드로이드/아이폰/관리자 등 만들어야하고 수많은 예외가 필요하기 때문에 쉽지는 않죠특히나 스타트업같은 경우는 시간이 금이고 개발력이 부족하기 때문에 더 어렵구요 그래서 선택한게 FaceBook 의 Parse 입니다.Parse는 Baas 서비스이구요, FaceBook이 2013년에 인수한 서비스입니다. 이글을 시작으로 당분간 Parse를 이용한 푸쉬서비스 구축에 대해 써보려고 합니다.푸쉬에 대한 부분만 이야기할거구요 Parse의 모든기능은 다루지 않을겁니다 일단 제가 푸쉬만 사용하는 이유는 아래와 같.. 더보기
[SQL] Mariadb , MySQL 사용시 Transaction level 'READ-COMMITTED' 오류 해결하기 이번에 OwnCloud 를 신규로 설치하면서 발생한 오류였는데, 생각보다 간단한 이슈였다바로 log 를 기록하는는 레벨문제 오류 내용Binary logging not possible. Message: Transaction level 'READ-COMMITTED' in InnoDB is not safe for binlog mode 'STATEMENT' 해결방법우분투14.04 를 기준으로 한다면(다른버전도 그닥 차이는 없을듯)$ vi /etc/mysql/my.cnf [mysqld] 부분에 아래 항목 추가 후 저장binlog_format=row위처럼 한뒤 mysql 데몬을 재시작해주면 된다 참쉽죠? 더보기
Android 5.x 에서 PG결제시 페이지 로딩안되는 문제( Webview 오류 해결하기 ) 오늘 서비스중인 앱에서 농협으로 결제시 결제가 안된다는 문의를 받았습니다. 보니까 Android5.0 / API LEVEL 21 부터 아래와 같은 내용이 추가되있더군요 If your app targets API level 21 or higher:The system blocks mixed content and third party cookies by default. To allow mixed content and third party cookies, use the setMixedContentMode() and setAcceptThirdPartyCookies() methods respectively.The system now intelligently chooses portions of the HTML doc.. 더보기
[Spring] 스프링3.x에서 mongoDB연동하기 스프링에서 몽고DB를 사용하려고 삽질을 겁나했다...일단 스프링을 본격적으로 사용한지가 얼마되지 않아서 많이 해맸는데, 해보고 나니 진짜 별거없다... 1. pom.xml 에 mongodb driver추가 org.mongodb mongo-java-driver 2.7.1 org.springframework.data spring-data-mongodb 1.0.1.RELEASE 2. config.xml 에 아래내용추가 - 저같은 경우는 mybatis와 함께 사용중이기 때문에 mybatis_config.xml 에 함께 추가해서 사용중입니다. 각자에 맞게 잡으시면됩니다 3. 쿼리날려보기( find )Query query = Query.query(Criteria.where("검색할key").is(검색할단어)); q.. 더보기
[Android]코드상에서 keystore의 keyhashd생성하기 /** * keystore의 keyhash를 생성한다 * @param mContext */ public void getAppKeyHash(Context mContext) { try { PackageInfo info = mContext.getPackageManager().getPackageInfo(mContext.getPackageName(), PackageManager.GET_SIGNATURES); for (Signature signature : info.signatures) { MessageDigest md; md = MessageDigest.getInstance("SHA"); md.update(signature.toByteArray()); String something = new String(Base.. 더보기
[Android Studio] assembleRelease를 이용하여 배포하기( signingConfigs 자동사이닝 ) Android Studio 에서는 앱을 사이닝(릴리즈,배포) 할때 사이닝키를 build.gradle에 지정해서 사용하는 방법을 소개하겠습니다.이 옵셔능 XCode 처럼 릴리즈와 디버그를 나누어서 빌드할 수 있습니다. build.gradle를 열어서 아래 구문을 추가해줍니다signingConfigs { release { storeFile file("signing key 경로") storePassword "암호" keyAlias "이름" keyPassword "암호" } } buildTypes { release { minifyEnabled true proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' signing.. 더보기
Android Studio1.0 출시 및 기존 베타버전 사용자가 수정해야할 옵션은? 안드로이드 스튜디오가 정식버전이 드디어 나왔습니다정식버전 출시와함께 기존 이클립스 ADT 의 지원이 공식 종료되었구요 기존에 Android Studio 0.8.x ~ 0.9 를 사용하시던 분이 1.0 으로 업데이트 하시면 몇가지 바꿔주셔야 할 부분이 있습니다.일단 맥의 경우 SDK설치경로가 패키지 내부로 바뀌었구요Gradle 버전이 1.0 으로 업데이트 되었습니다. Update Plugin and Gradle Version Numbers- 플러그인 버전을 1.0.0 으로 수정해주세요 dependencies {- classpath 'com.android.tools.build:gradle:0.8.+'+ classpath 'com.android.tools.build:gradle:1.0.0' } T gradle.. 더보기