yona-projects/yona

설치 후 실행시 오류

Closed this issue · 4 comments

안녕하세요.

Yona 설치

위 링크를 통해서 요나 1.15버전을 설치중입니다.
설치 경로는 /home/yona/yona-1.15.0 입니다.

mariadb가 원래 10.0이 설치되어 있어서 MariaDB 설치를 통해 10.3을 설치했습니다.

/home/yona에 실행 스크립트를 생성하였으며 스크립트 내용은 다음과 같습니다.(스크립트 없이 직접 실행해도 결과는 마찬가지입니다.)

#!/bin/bash
cd yona-1.15.0
YONA_DATA=/home/yona/data;export YONA_DATA
bin/yona

실행시 다음과 같은 에러가 발생합니다. 쿼리가 mariadb 10.3에서 지원하는 쿼리인건 알겠는데, mariadb를 업그레이드 했는데도 여전히 발생하는 이유를 모르겠습니다.

root@lotusport:/home/yona/yona-1.15.0# YONA_DATA=/home/yona/data;export YONA_DATA
root@lotusport:/home/yona/yona-1.15.0# bin/yona
Play server process ID is 109630
[info] play - database [default] connected at jdbc:mysql://127.0.0.1:3306/yona
[error] play - (conn:5845587) You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'CONSTRAINT IF EXISTS ck_attachment_container_type' at line 1
Query is : ALTER TABLE attachment DROP CONSTRAINT IF EXISTS ck_attachment_container_type [ERROR:1064, SQLSTATE:42000]
Oops, cannot start the server.
@7m6na45d8: Database 'default' is in an inconsistent state!
at play.api.db.evolutions.Evolutions$.checkEvolutionsState(Evolutions.scala:196)
at play.api.db.evolutions.Evolutions$.databaseEvolutions(Evolutions.scala:367)
at play.api.db.evolutions.Evolutions$$anonfun$evolutionScript$2.apply(Evolutions.scala:332)
at play.api.db.evolutions.Evolutions$$anonfun$evolutionScript$2.apply(Evolutions.scala:330)
at scala.Option.map(Option.scala:145)
at play.api.db.evolutions.Evolutions$.evolutionScript(Evolutions.scala:330)
at play.api.db.evolutions.EvolutionsPlugin$$anonfun$onStart$1$$anonfun$apply$1.apply$mcV$sp(Evolutions.scala:486)
at play.api.db.evolutions.EvolutionsPlugin.withLock(Evolutions.scala:531)
at play.api.db.evolutions.EvolutionsPlugin$$anonfun$onStart$1.apply(Evolutions.scala:485)
at play.api.db.evolutions.EvolutionsPlugin$$anonfun$onStart$1.apply(Evolutions.scala:483)
at scala.collection.immutable.List.foreach(List.scala:318)
at play.api.db.evolutions.EvolutionsPlugin.onStart(Evolutions.scala:483)
at play.api.Play$$anonfun$start$1$$anonfun$apply$mcV$sp$1.apply(Play.scala:91)
at play.api.Play$$anonfun$start$1$$anonfun$apply$mcV$sp$1.apply(Play.scala:91)
at scala.collection.immutable.List.foreach(List.scala:318)
at play.api.Play$$anonfun$start$1.apply$mcV$sp(Play.scala:91)
at play.api.Play$$anonfun$start$1.apply(Play.scala:91)
at play.api.Play$$anonfun$start$1.apply(Play.scala:91)
at play.utils.Threads$.withContextClassLoader(Threads.scala:21)
at play.api.Play$.start(Play.scala:90)
at play.core.StaticApplication.(ApplicationProvider.scala:55)
at play.core.server.NettyServer$.createServer(NettyServer.scala:253)
at play.core.server.NettyServer$$anonfun$main$3.apply(NettyServer.scala:289)
at play.core.server.NettyServer$$anonfun$main$3.apply(NettyServer.scala:284)
at scala.Option.map(Option.scala:145)
at play.core.server.NettyServer$.main(NettyServer.scala:284)
at play.core.server.NettyServer.main(NettyServer.scala)

뭔가 추가로 설정해줘야 하는게 있을까요?
mariadb 10.3설정 my.cnf는 기존 10.0에 사용하던 그대로입니다.

OS: ubuntu 16.04 LTS
Arch: x86_64

constraints 명령 관련 문제인데요 우선 Maria DB 10.2 버전에 설치해 보시겠어요?

constraints 명령 관련 문제인데요 우선 Maria DB 10.2 버전에 설치해 보시겠어요?

jdbc연결이 이상한거 같은데, 설정에는 jdbc:mariadb로 했는데, 실 연결은 jdbc:mysql로 하는게 맞는건가요?

해당 쿼리는 정상동작하거든요.

root@lotusport:/home/yona# mysql -u yona -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 10957
Server version: 10.3.29-MariaDB-1:10.3.29+maria~xenial mariadb.org binary distribution

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> use yona;
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
MariaDB [yona]> ALTER TABLE attachment DROP CONSTRAINT IF EXISTS ck_attachment_container_type;
Query OK, 0 rows affected, 1 warning (0.001 sec)
Records: 0 Duplicates: 0 Warnings: 1

신규 설치이신가요?
사용하시던 Yona DB를 10.0 에서 10.3 으로 업그레이드 하시는 상황이신가요?

신규라면 우선 Yona 를 중지시키신 다음 DB를 지우시고 다시 Yona 를 실행해주세요.
최초 실행도중 문제가 발생하면 DB가 속위말하는 꼬인 상태(Database 'default' is in an inconsistent state!) 가 되기때문에 그렇습니다.

감사합니다. 신규설치였는데, 기존에 10.0에서 어떤에러가 발생하는지 테스트해본 것 때문에 뭔가 꼬였던거 같습니다.

database 재생성 후 실행하니 정상 동작합니다.