">

가장 쉬운 방법으로 Mac에 MySQL을 설치해 보도록 하겠습니다. 


우선 MySQL 홈페이지에 가셔서 다음과 같이 진행합니다. 

다운로드 페이지로 이동한 뒤 Conmmunity Edition을 받도록 할게요.



Community Server를 선택하시고 다음 페이지로 넘어가면 사용 중인 OS를 선택하고 해당 OS 버전에 맞는 설치 파일을 다운 받아 설치를 진행하도록 합니다. 


바로 설치해서 사용할 수 있도록 DMG 파일을 다운 받습니다. 

다운로드를 진행할 때 계정이 필요한데 계정 발급은 무료니까 걱정마시고 만들어서 사용하세요. 


파일을 다 다운로드 받았으면 실행을 합니다. 설치 파일을 실행 시키면 아래와 같은 화면을 확인할 수 있습니다. 


그리고 설치를 진행하고, 설치가 완료되면 처음으로 설정된 root의 패스워드가 나옵니다. 창을 그냥 닫지 마시고 꼭!!! 기억해두세요~



설치는 마무리 되었습니다. 그럼 MySQL 서비스를 시작할 일만 남았죠?

아주 아주 아주 쉽습니다. 시스템 환경 설정에 들어가시면 MySQL 아이콘이 있습니다. 실행하도록 합니다. 


Start MySQL Server을 클릭 하시면 바로 시작 됩니다. 

설치 과정은 여기 까지 입니다!

  ALTER TABLE은 테이블의 스키마를 변경할 수 있도록 해주는 유용한 명령어입니다. 테이블 스키마란 쉽게 말하면 테이블의 구조라고 설명 드릴 수 있겠네요. 이 스키마라는 것은 논리적 스키마와 물리적 스키마로 분리해서 부릅니다. 데이터베이스 설명 페이지는 아니니 설명은 이쯤에서 마무리 할게요.


  좀 예전에는 각 데이터베이스 회사마다 사용되는 쿼리가 많이 달랐습니다. 하지만 표준화를 진행하면서 많이 비슷해 졌어요. ALTER TABLE 도 크게 다른 부분 없습니다. 


1. 테이블에 새로운 컬럼 추가하기

형식은 ALTER TABLE [테이블명] ADD COLUMN [추가할 컬럼명][추가할 컬럼 데이터형] 입니다.

mysql>ALTER TABLE user_info ADD COLUMN name varchar(20) not null;



2. 테이블 컬럼 타입 변경하기

형식은 ALTER TABLE [테이블명] MODIFY COLUMN [변경할 컬럼명][변경할 컬럼 타입] 입니다.

mysql>ALTER TABLE user_info MODIFY COLUMN name varchar(10) not null



3. 테이블 컬럼 이름 변경하기

형식은 ALTER TABLE [테이블명] CHANGE COLUMN [기존 컬럼 명][변경할 컬럼 명][변경할 컬럼 타입] 입니다.

mysql>ALTER TABLE user_info CHANGE COLUMN name nickname varchar(20) not null;



4. 테이블 컬럼 삭제하기

형식은 ALTER TABLE [테이블명] DROP COLUMN [삭제할 컬럼 명] 입니다.

mysql>ALTER TABLE user_info DROP COLUMN nickname;



5. 테이블 컬럼에 인덱스 설정하기

형식은 ALTER TABLE [테이블명] ADD INDEX 인덱스명(인덱스 설정할 컬럼1, 인덱스 설정할 컬럼2, ...) 입니다.

mysql>ALTER TABLE user_info ADD INDEX userindex(id);



6. 설정된 인덱스 삭제하기

형식은 ALTER TABLE [테이블명] DROP INDEX [인덱스명] 입니다.

mysql>ALTER TABLE user_info DROP INDEX userindex;


인덱스가 잘 제거 되었는지 확인하시려면,

mysql>SHOW INDEX FROM user_info;


이렇게 확인이 가능합니다. 



7. Primary Key 설정하기

형식은 ALTER TABLE [테이블명] ADD PRIMARY KEY (Key 설정할 컬럼 명1, Key 설정할 컬럼 명 2, ...) 입니다.

mysql> ALTER TABLE user_info ADD PRIMARY KEY (id, nickname);



8. Primary Key 삭제하기

형식은 ALTER TABLE [테이블명] DROP PRIMARY KEY 입니다.

mysql> ALTER TABLE user_info DROP PRIMARY KEY;



9. 테이블 이름 바꾸기

형식은 ALTER TABLE [원본 테이블] RENAME [새로운 테이블 이름] 입니다.

mysql> ALTER TABLE user_info RENAME vip_user_info;

아래의 설명은 GCM 등록과 관련된 코드에 문제가 없다는 전제하에 설명한 글입니다.


GCM을 구현 한 것에서 모든 문제가 없는데, 디버깅을 보니 아래와 같이 딱! 하니 에러코드가 나온다면 한번 의심해 봐야할 것이 있습니다.



사용자가 App을 설치하고 실행할 때 '백그라운드 데이터 제한' 설정을 해 놓았다면, 혹은 'Google Play 서비스' 항목에 해당해 '백그라운드 데이터 제한'을 했다면 그리고 사용하는 PUSH Service가  GCM 하나 밖에 없다면 저런 에러 메시지를 볼 수 있습니다.

문제를 해결할 수 있는 방법은 '백그라운드 데이터 제한'을 풀거나, GCM 이외의 Push Server를 두고 catch 문 안에 두 번째 Push Server로부터 Push Key를 가져오게 하는 방법 외엔 없습니다.


아래 그림은 '백그라운드 데이터 제한' 설정과 관련된 이미지입니다. 아래 그림에서 제한 설정을 끄면 GCM 서비스를 정상적으로 사용할 수 있습니다. 그리고 이 문제는 앱을 처음 설치할 시에만 발생합니다. 



+ Recent posts