티스토리 뷰
gubun | id | time | name1 | name2 | now | |||
---|---|---|---|---|---|---|---|---|
hockey | 71790579 | 12:00 | ì• ë„ˆí•˜ìž„ | ì• ë“œë¨¼í„´ | 2017-01-25 19:46:20 | |||
hockey | 50000680 | 11:30 | 콜로ë¼ë„ | ë²¤ì¿ ë²„ | 2017-01-25 19:46:20 | |||
hockey | 09612014 | 10:00 | 뉴욕 ë ˆì¸ì €ìŠ¤ | í•„ë¼ë¸í”¼ì•„ | 2017-01-25 19:46:20 | |||
hockey | 92815436 | 09:00 | 디트로ì´íŠ¸ | í† ë¡ í† | 2017-01-25 19:46:20 |
apmset 설치후 php 코딩을 해서 db에 넣는데 한글이 깨졌다. 웹브라우저로 출력하면 한글이 안깨지고 잘나왔다.
그래서 웹 서핑 작렬!
apmsetup을 설치후 루트에 보면 php.ini 파일이 있다.
아래와 같이 되어 있는 부분을
;default_charset = "iso-8859-1"
앞의 ; 주석을 없애고 아래와 같이 쓰고
default_charset = "utf8"
서버 재시작을 했다.
안됐다.
다시
그러고 보니 예전에 했던것이였다. 우선 xe나 그누보드등 웬만하면 현재 사용하고 있는 것들은 utf8 기반이다. 하지만 apmsetup 설치후 mysql은 기본값이 latin1 로 되어있다.
DB와 출력 플랫폼간의 인코딩이 서로 다른경우 속성(인코딩) 명령어를 일일이 명령어로 지정하여 사용해야 하기 때문에, 매우 번거롭다. 따라서 mysql의 인코딩 설정은 어떤 의미로는 필수적인 단계이다.
기본 비번은 root / apmsetup 이니 알아두도록 하고 다음과 같이 mysql에 접속한다.
C:\> mysql -uroot -papmsetup
mysql> show variables like 'c%'; 를 입력하면 현재 적용되어있는 캐릭터셋이 아래와 같이 리스트로 뜬다.
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\Users\Administrator> mysql -uroot -papmsetup
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 12
Server version: 5.1.41-community MySQL Community Server (GPL)
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> show variables like 'c%';
+--------------------------+--------------------------------------------+
| Variable_name | Value |
+--------------------------+--------------------------------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | C:\APM_Setup\Server\MySQL5\share\charsets\ |
| collation_connection | latin1_swedish_ci |
| collation_database | latin1_swedish_ci |
| collation_server | latin1_swedish_ci |
| completion_type | 0 |
| concurrent_insert | 1 |
| connect_timeout | 10 |
+--------------------------+--------------------------------------------+
14 rows in set (0.00 sec)
mysql>
이렇게 기본값이 latin1 이다.
C:\APM_Setup\Server\MySQL5\data 에서 my.ini 파일을 편집기로 오픈한다.
[mysqld]
init_connect=SET collation_connection = utf8_general_ci
init_connect=SET NAMES utf8
default-character-set=utf8
character-set-server=utf8
collation-server=utf8_general_ci
[mysql]
default-character-set=utf8
저장이 되었으면 현재 my.ini파일을 복사하여 APM_setup\Server\MYSQL5에 붙여넣기 한다.
그러면
C:\APM_setup\Server\MYSQL5\data 폴더에 my.ini 한개 존재
C:\APM_setup\Server\MYSQL5 폴더에 my.ini 한개 존재
이렇게 총 두개의 my.ini가 존재 할 것이다.
data 하위에 my.ini가 없으면 APMSETUP모니터가 작동하지 않기때문에 이렇게 조치 하는것이다.
수정이 끝났으면 mysql을 재시작 해야 하는데
ㄱ. APM프로그램에서 stop을 누른뒤 다시 Start를 누르거나 (추천)
ㄴ. mysql> quit;
c:\>mysqladmin -uroot -papmsetup reload 라는 커맨드로 입력해도 된다.
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\Users\sdk> mysql -uroot -papmsetup
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 460
Server version: 5.1.41-community MySQL Community Server (GPL)
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> show variables like 'c%';
+--------------------------+--------------------------------------------+
| Variable_name | Value |
+--------------------------+--------------------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | C:\APM_Setup\Server\MySQL5\share\charsets\ |
| collation_connection | utf8_general_ci |
| collation_database | utf8_general_ci |
| collation_server | utf8_general_ci |
| completion_type | 0 |
| concurrent_insert | 1 |
| connect_timeout | 10 |
+--------------------------+--------------------------------------------+
14 rows in set (0.05 sec)
c:\>mysqladmin -uroot -papmsetup reload
이렇게 하고 다시
mysql> show variables like 'c%';
해봤는데 일부만 utf8로 바뀌어 있고 일부는 바뀌지 않고 latin1으로 계속 남아 있었다.
그래서 APMSETUP Monitor에서 STOP후 START 하니 위에 처럼 모든게 utf8로 바뀌어 있었다.
그리고 나서도 해봤는데 한글이 또 깨져있었다. 아래처럼 php 에서 한번더 해줘야 한다.
mysqli_set_charset($mysqli ,"utf8" );
'mariaDB' 카테고리의 다른 글
mysql mariadb 두개 테이블 update (0) | 2018.01.17 |
---|---|
mysql 문자열 자르기, 문자열 나누기 left, substring, right (0) | 2018.01.15 |
mysql rank 순위 뽑는 쿼리 (0) | 2018.01.10 |
mysql 문자열 붙이기 및 숫자를 문자로 변경하기 (0) | 2017.06.29 |
mysql 현재 날짜 시간 입력 (0) | 2017.05.29 |
- Total
- Today
- Yesterday
- esql
- 포인터
- EC
- xe애드온
- php
- MySQL
- 스크래핑
- 플러터
- 프로씨
- XE3
- KG
- JDBC
- xe addon
- ocjap
- C언어
- 파이썬
- 오라클
- 인포믹스
- webix
- proc
- 이클립스
- C
- Python
- ocpjp
- 자바
- 문자열
- 자바 smtp
- XE
- 파싱
- ocajp
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |