'shutdown=true'에 해당되는 글 2건
- 2011.02.11 HSQLDB
- 2009.04.06 Grails - 서버 재시작시 데이터 삭제되지 않게 하기
http://hsqldb.org/doc/2.0/guide/running-chapt.html
1. HyperSQL Database 에는 데이터를 저장하는 형태에 따라 세가지 종류의 catalog가 있다.
2. 데이터에 접근하는 방식은 두가지가 있다.
2.1. In-Process 방식
2.2. Server Modes
2.2.1. HyperSQL HSQL Server
2.2.2. HyperSQL HTTP Server
2.2.3. HyperSQL HTTP Servlet
2.2.4. Database Server에 접근하는 방법
3. 데이터베이스 종료 시키기
반드시 SHUTDOWN 명령이나 쿼리를 실행시켜서 종료시킬 것.
아니면 연결 문자열에 속성을 지정한다. 1
In-Process, file: 카타로그로 실행시킨 경우 shutdown으로 정상종료시키지 않으면 script 파일에 기록되지 않는다.
1. HyperSQL Database 에는 데이터를 저장하는 형태에 따라 세가지 종류의 catalog가 있다.
- mem:
- file:
- res:
2. 데이터에 접근하는 방식은 두가지가 있다.
2.1. In-Process 방식
Connection c = DriverManager.getConnection("jdbc:hsqldb:file:/opt/db/testdb", "SA", "");
Connection c = DriverManager.getConnection("jdbc:hsqldb:mem:mymemdb", "SA", "");
2.2. Server Modes
2.2.1. HyperSQL HSQL Server
java -cp hsqldb.jar org.hsqldb.server.Server --database.0 file:mydb --dbname.0 xdb
java -cp hsqldb.jar org.hsqldb.server.Server --database.0 mem:mydb --dbname.0 xdb
2.2.2. HyperSQL HTTP Server
java -cp hsqldb.jar org.hsqldb.server.WebServer --database.0 file:mydb --dbname.0 xdb
2.2.3. HyperSQL HTTP Servlet
2.2.4. Database Server에 접근하는 방법
Connection c = DriverManager.getConnection("jdbc:hsqldb:hsql://localhost/xdb", "SA", "");
Connection c = DriverManager.getConnection("jdbc:hsqldb:http://localhost/xdb", "SA", "");
3. 데이터베이스 종료 시키기
반드시 SHUTDOWN 명령이나 쿼리를 실행시켜서 종료시킬 것.
아니면 연결 문자열에 속성을 지정한다. 1
Connection c = DriverManager.getConnection("jdbc:hsqldb:file:testdb;shutdown=true", "SA", "");
In-Process, file: 카타로그로 실행시킨 경우 shutdown으로 정상종료시키지 않으면 script 파일에 기록되지 않는다.
- 이 옵션은 아마 1.8부터 될거야. [본문으로]
- Grails - 서버 재시작시 데이터 삭제되지 않게 하기
- 日常茶飯事
- 2009. 4. 6. 00:35
> grails prod run-app //prodDb.script 에 데이터가 저장된다.
grails-app/conf/DataSource.groovy에서 development 설정을 production 과 동일하게 둔다.hsqldb를 사용하므로 파일에 저장되도록 한다.
dbCreate = "create-drop" //update 로 수정한다.
url = "jdbc:hsqldb:mem:devDB" //jdbc:hsqldb:file:devDB;shutdown=true 로 수정한다. devDB.script 에 데이터가 저장된다.
url = "jdbc:hsqldb:mem:devDB" //jdbc:hsqldb:file:devDB;shutdown=true 로 수정한다. devDB.script 에 데이터가 저장된다.
또는 서버 시작시 데이터를 넣는다.
conf/BootStrap.groovy
class BootStrap {
def init = { servletContext ->
new Book(author:"Stephen King",title:"The Shining").save()
new Book(author:"James Patterson",title:"Along Came a Spider").save()
}
def destroy = {
}
}
def init = { servletContext ->
new Book(author:"Stephen King",title:"The Shining").save()
new Book(author:"James Patterson",title:"Along Came a Spider").save()
}
def destroy = {
}
}
- 참고 : each문 사용
class BootStrap {
def init = { servletContext ->
if(GrailsUtil.environment == "development"){
new Tag(name:"Work").save()
new Tag(name:"Home").save()
new Tag(name:"Study").save()
def admin = new User(userId:"admin", password:"grails").save()
def testUser = new User(userId:"test", password:"test").save()
def testUser2 = new User(userId:"testA", password:"test").save()
(1..11).each{
new Entry(title:"$it", content:"content$it", user:admin).save()
}
new Entry(title:"test", content:"content", user:testUser).save()
new Entry(title:"123", content:"456", user:testUser2).save()
}
}
def destroy = {
}
}
Recent comment