일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 돈까스
- TOY
- 여름
- 돼지갈비
- 스테이크
- youtuber
- one tab buy
- 칸칸
- しまじろう
- 전철
- 시스템관리
- 영단어
- 동경 모터쇼
- fish
- 토익
- 점심
- 명령어
- 米沢、팽이
- 라면
- 신쥬쿠
- 코라쿠엔
- 원탭바이
- Shimajirou
- 시마지로
- Sekai Entertainment
- 일본
- 리눅스
- 사이타마
- 자동차
- paypay
- Today
- Total
IT Japan
[mySQL5.5] 05장. Client and Tools 본문
n
Safe Updates
- update 와 delete시에 where 조건절이나 LIMIT절을 포함해야 한다.
- SELECT : LIMIT 절이 기술되어
있지 않은 경우,
단일 테이블인 경우 최대 1000건까지만 표시, 다중테이블인 경우는 최대 1,000,000건까지 표시.
1. 현재 여러건의 데이터를 삭제하면 에러 없이 잘 수행됩니다.
mysql> delete from city_temp;
Query OK, 4079 rows affected (0.05 sec)
2. 이번에는 --safe-updates 옵션으로 시작합니다.
-bash-3.2$ mysql -uroot -poracle --safe-updates
mysql> use world_innodb;
Database changed
mysql> select count(*) from city_temp;
+----------+
| count(*) |
+----------+
| 4079 |
+----------+
1 row in set (0.00 sec)
3. where 조건없이 삭제하는 경우, 에러가 발생합니다.
mysql> delete from city_temp;
ERROR 1175 (HY000): You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column
4. where 조건절을 사용하면 잘 수행됨을 알 수 있습니다.
mysql> delete from city_temp where id =100;
Query OK, 1 row affected (0.00 sec)
mysql> delete from city_temp where id =101 limit 1;
Query OK, 1 row affected (0.01 sec)
5. select를 테스트합니다.
mysql> SELECT COUNT(*) FROM scores; // 현재 건수를 조회한다.
| 16384 |
mysql> SELECT * FROM scores;
...
...
| 1 | 1st |
+------+---------+
1000 rows in set (0.00 sec)
6. LIMIT 을 주면 원하는 행을 조회할수 있다.
mysql> SELECT * FROM scores LIMIT 1001;
...
| 1 | 1st |
| 1 | 1st |
+------+---------+
1001 rows in set (0.01 sec)
n
Output Format
① Interactive : |(vertical bar) 와 –(dash)를 이용한 박스로 결과 표시
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
| world_innodb |
+--------------------+
5 rows in set (0.00 sec)
②
Batch : tab으로 구분된 결과 표시
-bash-3.2$ mysql -uroot -poracle <./aa.sql
ID Name CountryCode District Population
1 Kabul AFG Kabol 1780000
2 Qandahar AFG Qandahar 237500
3 Herat AFG Herat 186800
4 Mazar-e-Sharif AFG Balkh 127800
5 Amsterdam NLD Noord-Holland 731200
6 Rotterdam NLD Zuid-Holland 593321
7 Haag NLD Zuid-Holland 440900
8 Utrecht NLD Utrecht 234323
9 Eindhoven NLD Noord-Brabant 201843
10 Tilburg NLD Noord-Brabant 193238
n
tee
- 현재 session을 기록합니다.
1. 현재 session을 기록합니다.
mysql> tee t1.txt
Logging to file 't1.txt'
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
….
+--------------------+
…..
mysql> select count(*) from City;
+----------+
| count(*) |
+----------+
| 4079 |
+----------+
mysql> notee;
Outfile disabled.
2. 세션 로깅 정보를 확인합니다.
-bash-3.2$ more t1.txt
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
...
mysql> select count(*) from City;
+----------+
| count(*) |
+----------+
| 4079 |
+----------+
1 row in set (0.00 sec)
mysql> notee;
n \e
n pager
- 원하는 pager를 설정할 수 있습니다.
- interactive하게 OS 명령어를 사용하는 기능
1. \P more를 실행하면, 데이터를 1 페이지정도 표시한 후, --More--prompt상태에서 대기한다
-bash-3.2$ mysql -uroot -poracle --pager=more
2. 이번에는 OS 명령어 ps -ef|grep mysqld를 실행해봅니다.
n Rehash
- database, table, column명을 자동 완성하는 기능: 첫글자 입력후 + Tab을 누르면 됩니다.
-bash-3.2$ mysql -uroot -poracle --auto-rehash
mysql> use world_innodb;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
'MySQL' 카테고리의 다른 글
[mySQL5.5] 08장. Transaction & Locking (0) | 2016.03.23 |
---|---|
[mySQL5.5] 06장. Data Types (0) | 2016.03.23 |
[mySQL5.5] 04장. Server Configuration (0) | 2016.03.23 |
[mySQL5.5] 03장. Upgrading from 5.1 to 5.5 (0) | 2016.03.23 |
[mySQL5.5] 03장. MySQL Server (0) | 2016.03.23 |