๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฐ๊ฒฐ ๊ตฌ์กฐ
์ฌ์ฉ์๋ ์น ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ(WAS)๋ DB ์ ๊ทผ ํด ๊ฐ์ ํด๋ผ์ด์ธํธ๋ฅผ ์ฌ์ฉํด์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์๋ฒ์ ์ ๊ทผํ ์ ์๋ค.
ํด๋ผ์ด์ธํธ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์๋ฒ์ ์ฐ๊ฒฐ์ ์์ฒญํ๊ณ ์ปค๋ฅ์ ์ ๋งบ๊ฒ ๋๋ค.
์ด๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์๋ฒ๋ ๋ด๋ถ์ ์ธ์ ์ด๋ผ๋ ๊ฒ์ ๋ง๋ ๋ค.
๊ทธ๋ฆฌ๊ณ ์์ผ๋ก ํด๋น ์ปค๋ฅ์ ์ ํตํ ๋ชจ๋ ์์ฒญ์ ์ด ์ธ์ ์ ํตํด์ ์คํํ๊ฒ ๋๋ค.
Database Session
๋ฐ์ดํฐ๋ฒ ์ด์ค ์ ์์ ์์์ผ๋ก, ์ฌ๋ฌ ์์ ์ ์ํํ ํ ์ ์ ์ข ๋ฃ๊น์ง์ ์ ์ฒด ๊ธฐ๊ฐ์ ์๋ฏธํ๋ค.
์ธ์ ์์๋ ์ฌ๋ฌ๊ฐ์ ํธ๋์ญ์ ์ด ์กด์ฌํ ์ ์์ผ๋ฉฐ(ํ๋ ์ด์์),
์ผ๋ฐ์ ์ผ๋ก ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ์ฌ๋ฌ ๊ณณ์์ ๋์์ ์ ๊ทผ์ด ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ ๋ง์ ์ธ์ ์ด ๋์์ ์ฐ๊ฒฐ๋ ์ ์๋ค.
์ธ์ ์ ๋ฐ์ดํฐ๊ฐ ๋ณ๊ฒฝ, ์ญ์ ๊ฐ ํ์ ๋ ๋๊น์ง ํด๋น ๋ฐ์ดํฐ ์กฐ์์ ๋ถ๋ฆฌ์ฒ๋ฆฌํจ์ผ๋ก์จ
๋ฐ์ดํฐ์ ํ ์ด๋ธ๊ณผ์ ๊ด๊ณ๋ฅผ ๋ณด์กดํ๋ ์ญํ ์ ํ๋ค.
ํน์ ์ธ์ ์์ ์กฐ์์ค์ธ ๋ฐ์ดํฐ๋ Transaction์ด commit ๋๊ธฐ ์ ๊น์ง ๋ค๋ฅธ ์ธ์ ์์ ์กฐ์ํ ์ ์๋ค.
์ฌ์ฉ์์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ ์์ด ์ด๋ฃจ์ด์ง๋ฉด ์ธ์ ์ ์์ฑํฉ๋๋ค.
์ธ์ ์ ์ฌ์ฉ์๊ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ฐ๊ฒฐ๋์ด ์๋ ๋์ ๊ณ์ ์ ์ง๋๊ณ ,
๊ฐ ์ธ์ ์๋ SID(Sesiion ID)์ ์๋ฆฌ์ผ๋ฒํธ(Serial#)๊ฐ ๋ถ์ฌ๋ฉ๋๋ค.
SID์ ์๋ฆฌ์ผ๋ฒํธ๊ฐ ๋๊ฐ ์กด์ฌํ๋ ์ด์ ๋ ์ธ์ ์ด ์ข ๋ฃ๋์์ผ๋ ๋ค๋ฅธ ์ธ์ ์ด ๋์ผํ SID๋ฅผ ๊ฐ๊ณ ์์๋์์ ๋
์ธ์ ๋ช ๋ น๋ค์ด ์ ํํ ์ธ์ ์ ์ ์ฉ๋ ์ ์๋๋ก ํ๊ธฐ์ํด์ ์ ๋๋ค.
์ปค๋ฅ์ ํ์ด 10๊ฐ์ ์ปค๋ฅ์ ์ ์์ฑํ๋ฉด, ์ธ์ ๋ 10๊ฐ ๋ง๋ค์ด์ง๋ค.
์ปค๋ฅ์ ์ ํ์ดํ๋ก, ์ธ์ ์ ํ์ดํ๋ฅผ ์ด๋ฃจ๋ ์์ด์ด๋ค๋ก ์๊ฐํ๋ฉด ๊ฐ๋ ์ด ์ฝ๊ฒ ์๋ฟ์ ๊ฒ์ด๋ค.
์์
//ํธ๋์ญ์
์์
set autocommit false; //์๋ ์ปค๋ฐ ๋ชจ๋
insert into member(member_id, money) values ('newId1',10000);
insert into member(member_id, money) values ('newId2',10000);
์ธ์ 1์์ ์ ๊ท ๋ฐ์ดํฐ๋ฅผ ์ถ๊ฐํ์๋ค.
์์ง ์ธ์ 1์ด ์ปค๋ฐ์ ํ์ง ์์ ์ํ์ด๊ธฐ ๋๋ฌธ์ ์ธ์ 1์์๋ ์ ๋ ฅํ ๋ฐ์ดํฐ๊ฐ ๋ณด์ด์ง๋ง,
์ธ์ 2์์๋ ์ ๋ ฅํ ๋ฐ์ดํฐ๊ฐ ๋ณด์ด์ง ์๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
์ธ์ 1์ด ํธ๋์ญ์ ์ ์ปค๋ฐํ๊ธฐ ๋๋ฌธ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ค์ ๋ฐ์ดํฐ๊ฐ ๋ฐ์๋๋ค.
์ปค๋ฐ ์ดํ์๋ ๋ชจ๋ ์ธ์ ์์ ๋ฐ์ดํฐ๋ฅผ ์กฐํํ ์ ์๋ค.
๋กค๋ฐฑ๋ ๋ง์ฐฌ๊ฐ์ง๋ค.
https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-db-1/dashboard
'Spring > Spring DB' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[์คํ๋ง DB 1ํธ] - 7. ์คํ๋ง๊ณผ ๋ฌธ์ ํด๊ฒฐ - ํธ๋์ญ์ (0) | 2023.03.21 |
---|---|
[์คํ๋ง DB 1ํธ] - 6. DB ๋ฝ (0) | 2023.03.19 |
[์คํ๋ง DB 1ํธ] - 4. ํธ๋์ญ์ (0) | 2023.03.15 |
[์คํ๋ง DB 1ํธ] - 3. DataSource ์ดํด (0) | 2023.03.14 |
[์คํ๋ง DB 1ํธ] - 2. ์ปค๋ฅ์ ํ(Connection Pool) (0) | 2023.03.14 |