Hi James, Thank you so much for your help!
It works! I query successfully in drill bash. But in Squirrel SQL. I cannot get the table content show up due to the following error: 2023-12-05 10:20:24,573 [1a90a426-e547-8df5-db2a-be595f708cb9:foreman] INFO o.a.d.e.p.s.conversion.SqlConverter - User Error Occurred: From line 1, column 19 to line 1, column 60: Object 'DRILL' not found (From line 1, column 19 to line 1, column 60: *Object 'DRILL' not found*) org.apache.drill.common.exceptions.UserException: VALIDATION ERROR: From line 1, column 19 to line 1, column 60: Object 'DRILL' not found [Error Id: d10ed29c-6559-4805-8405-2cdfb0db3350 ] at org.apache.drill.common.exceptions.UserException$Builder.build(UserException.java:688) at org.apache.drill.exec.planner.sql.conversion.SqlConverter.validate(SqlConverter.java:220) at org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.validateNode(DefaultSqlHandler.java:662) at org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.validateAndConvert(DefaultSqlHandler.java:198) at org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.getPlan(DefaultSqlHandler.java:172) at org.apache.drill.exec.planner.sql.DrillSqlWorker.getQueryPlan(DrillSqlWorker.java:298) at org.apache.drill.exec.planner.sql.DrillSqlWorker.getPhysicalPlan(DrillSqlWorker.java:179) at org.apache.drill.exec.planner.sql.DrillSqlWorker.convertPlan(DrillSqlWorker.java:129) at org.apache.drill.exec.planner.sql.DrillSqlWorker.getPlan(DrillSqlWorker.java:94) at org.apache.drill.exec.work.foreman.Foreman.runSQL(Foreman.java:594) at org.apache.drill.exec.work.foreman.Foreman.run(Foreman.java:274) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:750) Caused by: org.apache.calcite.runtime.CalciteContextException: From line 1, column 19 to line 1, column 60: Object 'DRILL' not found at sun.reflect.GeneratedConstructorAccessor110.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at org.apache.calcite.runtime.Resources$ExInstWithCause.ex(Resources.java:505) at org.apache.calcite.sql.SqlUtil.newContextException(SqlUtil.java:945) at org.apache.calcite.sql.SqlUtil.newContextException(SqlUtil.java:930) at org.apache.calcite.sql.validate.SqlValidatorImpl.newValidationError(SqlValidatorImpl.java:5464) at org.apache.calcite.sql.validate.IdentifierNamespace.resolveImpl(IdentifierNamespace.java:183) at org.apache.calcite.sql.validate.IdentifierNamespace.validateImpl(IdentifierNamespace.java:188) at org.apache.calcite.sql.validate.AbstractNamespace.validate(AbstractNamespace.java:88) at org.apache.calcite.sql.validate.SqlValidatorImpl.validateNamespace(SqlValidatorImpl.java:1135) at org.apache.calcite.sql.validate.SqlValidatorImpl.validateQuery(SqlValidatorImpl.java:1106) at org.apache.calcite.sql.validate.SqlValidatorImpl.validateFrom(SqlValidatorImpl.java:3429) at org.apache.calcite.sql.validate.SqlValidatorImpl.validateFrom(SqlValidatorImpl.java:3408) at org.apache.calcite.sql.validate.SqlValidatorImpl.validateSelect(SqlValidatorImpl.java:3766) at org.apache.calcite.sql.validate.SelectNamespace.validateImpl(SelectNamespace.java:61) at org.apache.calcite.sql.validate.AbstractNamespace.validate(AbstractNamespace.java:88) at org.apache.calcite.sql.validate.SqlValidatorImpl.validateNamespace(SqlValidatorImpl.java:1135) at org.apache.calcite.sql.validate.SqlValidatorImpl.validateQuery(SqlValidatorImpl.java:1106) at org.apache.calcite.sql.SqlSelect.validate(SqlSelect.java:282) at org.apache.calcite.sql.validate.SqlValidatorImpl.validateScopedExpression(SqlValidatorImpl.java:1081) at org.apache.calcite.sql.validate.SqlValidatorImpl.validate(SqlValidatorImpl.java:787) at org.apache.drill.exec.planner.sql.conversion.SqlConverter.validate(SqlConverter.java:212) ... 12 common frames omitted Caused by: org.apache.calcite.sql.validate.SqlValidatorException: Object 'DRILL' not found at sun.reflect.GeneratedConstructorAccessor109.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at org.apache.calcite.runtime.Resources$ExInstWithCause.ex(Resources.java:505) at org.apache.calcite.runtime.Resources$ExInst.ex(Resources.java:599) ... 31 common frames omitted The database structure looks like that. And when I click on one table, the query log show: {"schema":"jdbc.schema.oauser","start":1701796824382,"finish":1701796824574,"outcome":"FAILED","remoteAddress":" 127.0.0.1:59371","id":"1a90a426-e547-8df5-db2a-be595f708cb9","query":"select tbl.* from `DRILL`.`jdbc.schema.oauser`.`AG_MANIFEST` tbl","user":"t1"} [image: image.png] Do you know how to configure 'DRILL' so it can be recognize in Squirrel SQL? Thank you! Yu James Turton <dz...@apache.org> 于2023年12月1日周五 23:16写道: > jdbc:drill:drillbit=<hostname>:31010 > > The above should work for connecting to embedded Drill running on a remote > host. If it doesn't then I'd test whether Drill has bound to port 31010 on a > reachable IP address and whether any firewall is interfering. > > Related: > https://drill.apache.org/docs/ports-and-bind-addresses-used-by-drill/ > > On 2023/12/01 20:38, yu sun wrote: > > Hi there, > > I'm trying to replace the previous JDBC driver with Drill. However, I had a > hard time configuring Squirrel SQL after going through all the tutorials. > > My previous alias URL has the format below: > jdbc:dataaccess://<database host>:<database port>;ServerDataSource=<data > source name> > > I want to use the embedded mode with Drill. The below URL works in Squirrel > SQL. > jdbc:drill:drillbit=localhost:31010 > But how can I visit the database in the specific host and port, rather than > my localhost? > Where shall I put the information of <database host>:<database > port>;ServerDataSource=<data source name>? > > I tried to use jdbc:drill:drillbit=<database host>:<database > port>;ServerDataSource=<data source name> but it won't work. > > Thank you so much for your help! > Yu Sun > > > >