컴퓨터 이야기

[MySQL] 특정 이름으로 시작하는 DB 일괄 삭제

JoonHo Son
역시 구글은 개발자의 친구~ 유후~ # drop-db.sh DB_STARTS_WITH='sample_' # sample_table1, sample_table2... MUSER="" MPWD="" MYSQL="mysql" DBS="$($MYSQL -u$MUSER -p$MPWD -Bse 'show databases')" for db in $DBS; do if [[ "$db" =~ ^$PDB_STARTS_WITH}" ]]; then echo "Deleting $db" $MYSQL -u$MUSER -p$MPWD -Bse "drop database $db" fi done

Isolation level

JoonHo Son
// java.sql.Connection에 정의됨 int TRANSACTION_NONE = 0; int TRANSACTION_READ_UNCOMMITTED = 1; int TRANSACTION_READ_COMMITTED = 2; int TRANSACTION_REPEATABLE_READ = 4; int TRANSACTION_SERIALIZABLE = 8; 아래의 내용은 호박고구메의 게임 이야기 에서 일부 발췌. 각 레벨별 상수는 발췌한 블로그의 내용이 잘못되어 실제 java.sql.Connection 클래스에 정의된 상수로 대체(붉은글씨 ) 차단 레벨 차단레벨 (Isolcation level) Dirty read Non-repeatable read Phantom read TRANSACTION_READ_UNCOMMIT O O O TRANSACTION_READ_COMMIT X O O TRANSACTION_REPEATABLE_READ X X O(X) TRANSACTION_SERIALIZABLE X X X Connection 인터페이스에서 트랜잭션 차단 레벨과 관련된 필드 필드 설명 값 int TRANSACTION_NONE 트랜잭션이 지원되지 않음을 나타내는 상수 0 int TRANSACTION_READ_UNCOMMITTED dirty read, non-repeatable read와 phantom read가 발생할 수 있음을 나타내는 상수 1 int TRANSACTION_READ_COMMITTED dirty read는 금지되고, non-repeatable read와 phantom read는 발생할 수 있음을 나타내는 상수 2 int TRANSACTION_REPEATABLE_READ dirty read와 non-repeatable read는 금지되고, phantom read는 발생할 수 있음을 나타내는 상수 4 int TRANSACTION_SERIALIZABLE dirty read, non-repeatable read와 phantom read 모두 금지됨을 나타내는 상수 8

[MySQL] 특정 이름으로 시작하는 DB 백업 및 복구

JoonHo Son
삽질 + 구글링으로 완성. 각각의 이미지는 다음 링크 참조(gist) backup : https://gist.github.com/JoonHoSon/56cd2cfe5efa36d60d14473e19ecba92#file-backup-sh restore : https://gist.github.com/JoonHoSon/56cd2cfe5efa36d60d14473e19ecba92#file-restore-sh << backup >> << restore >>

Go언어 지원 platform/architecture

JoonHo Son
참고 : Optional environment variables GOOS GOARCH aix ppc64 android 386 android amd64 android arm android arm64 darwin amd64 darwin arm64 dragonfly amd64 freebsd 386 freebsd amd64 freebsd arm illumos amd64 js wasm linux 386 linux amd64 linux arm linux arm64 linux ppc64 linux ppc64le linux mips linux mipsle linux mips64 linux mips64le linux s390x netbsd 386 netbsd amd64 netbsd arm openbsd 386 openbsd amd64 openbsd arm openbsd arm64 plan9 386 plan9 amd64 plan9 arm solaris amd64 windows 386 windows amd64

iOS9 / Xcode7에서 Facebook등 다른 app의 URL Scheme 호출 실패

JoonHo Son
iOS의 social / account framework을 이용한 페이스북 로그인 구현시 다음과 같은 상황이 발생하였다. fb://로 시작하는 url에 접속 가능한지 여부, 즉 Facebook app이 설치되었는지 확인하려고 다음의 코드를 호출하였다. -(BOOL) functionName { if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"fb://]]) { NSString *urlString = request.URL.absoluteString; if ([@https://m.facebook.com/plugins/login_success.php" isEqualToString:urlString]) { [self accountStore]; return NO; } return YES: } return YES; } 하지만 아래와 같은 오류 메세지를 줄기차게 뱉어냈다. 2015-08-24 21:57:23.219 meerkat[277:20308] -canOpenURL: failed for URL: “fb://” – error: “This app is not allowed to query for scheme fb”

삽질

JoonHo Son
차도 갖고 온김에 탄력 받았을 때 좀 하려고 바리바리 싸가지고 왔구만… Bootcamp 설치하고 잤다. 아… 삽질… << 인텔 에디슨 >> << Bootcamp로 부팅된 구형 맥북에서의 윈도우. 😭 >>

Xcode 7 beta 4~5 버전에서 Storyboard 및 simulator가 동작하지 않을 경우

JoonHo Son
현재 OS X El Capitan beta 6(15A244d)과 Xcode 7 beta 5에서 simulator crash 및 storyboard를 열 수 없을 경우에는 아래의 경로에 있는 구 버전의 simulator를 삭제후 Xcode를 재기동 하면 된다. /Library/Developer/CoreSimulator/Profiles/Runtimes 나의 경우에는 다음과 같은 simulator 폴더가 있었고, 모두 삭제한 후 Xcode를 재기동 하니 정상적으로 작동하였다. iOS 7.1.simruntime iOS 8.1.simruntime iOS 8.2.simruntime 참고 : Apple Developer Forums

드디어 성공!

JoonHo Son
1. 드디어 성공 T.T 삽질의 삽질, 친구의 과외를 통해 결국 성공. 근데, 꼴랑 LED 컨트롤 하는건 이번 과제와 전혀 상관 없다는게 함정. 2. 배터리 홀더가 필요해. 그리고… 얼른 배터리 홀더 사야지. T.T 오늘도 사무실 근처 초등학교와 중학교를 돌아 다녔는데, 문방구를 딱 한 군데 봤다. 굉장히 30년은 족히 되보이는 문방구에 할아버님이 계셨는데 배터리 홀더를 설명드리고 혹시 살 수 있는지 여쭤보니, 달라는 사람이 있을 때마다 초등학생용 전기 키트에서 다 빼서 파셨다고… 어영부영 내일 금요일이니 주말에 집앞 문방구에 가서 주문해야겠다.

요즘 하는 일

JoonHo Son
요즘 하는(하려고 노력하는) 일. 중학교 때인가 라디오 만들기, 그리고 군대 가기전 아버지 가게에서 재미삼아 몇 번 해보던 것 밖에 없는데, 눈앞이 캄캄하다. 당분간 이쪽과 관련된 포스팅이나 위키 정리가 많을 듯. T.T << Beaglebone black >> << Raspberry Pi >> << 빵판과 무선 공유기 >>

호스팅 서비스 변경

JoonHo Son
Digital Ocean에서 두 개의 서비스를 받았었는데 너무 속도가 안나와서 (결국… 아니었다 T.T) 국내 서비스(스쿨 호스팅)으로 변경했다. 나름 백업을 다 하고 이전했다고 생각 했는데, 결국 위키 데이터는 살리지 못했고, confluence는 메모리 부족으로 설치에서 뻗어버려서 포기하고 블로그만 겨우 살렸다. 각주 기능등이 미흡해서 마음에 안들었지만, $10 주고 산게 아까워서 계속 썼었는데… 이참에 다시 wiki로 돌아가야겠다. 그나저나… 별로 작성한 내용도 없지만, wiki 다시 작성하려니 어헉.