Tag: 谷歌云 SQL

容纳了需要访问SQL Server数据库的应用程序

我开始思考如何将SQL Server数据库连接到“包含”我们的应用程序的容器。 我收到的答案是简单地build立另一个容器,并将两个容器连接在一起。 这似乎是一个很好的答案,我已经开始实施。 但经过进一步思考和其他评论,我开始怀疑这是否是最好的前进方向。 这可能不是犹太教,但为了完整起见,我重申我的问题。 从容器中,我如何在容器和现有的SQL Server数据库之间build立连接?

无法连接到运行在docker上的.net核心应用程序的SQL Server Express

我有SQL Server 2016 Express,用于Windows的Docker和安装在Windows 10机器上的IIS。 SQL Server Expressconfiguration为在1455端口上侦听。 Northwind示例数据库就在那里。 Windows防火墙已禁用。 Ipconfig显示如下: Ethernet adapter vEthernet (DockerNAT) 2: Connection-specific DNS Suffix . : Link-local IPv6 Address . . . . . : fe80::70f1:3323:a7a8:b7a5%21 IPv4 Address. . . . . . . . . . . : 10.0.75.1 Subnet Mask . . . . . . . . […]

如何在Docker中使用Windowsvalidation连接到SQL Server

我有一个SQL Server数据库与Windows身份validation。 如何从包装在Docker容器(Windows和Linux容器)中的应用程序连接到此数据库?

mysql docker容器 – 授予用户权限 – 警告

我已经启动了标准的mysql docker容器 ,现在想创build一个用户并授予他特权 。 但没有发生,我得到这个警告: MySQL is started in –skip-name-resolve mode; you must restart it without this switch for this grant to work 我不熟悉MySQL – 那么我应该在这里做什么? 更好的解决scheme是使用额外的sql脚本来启动这个容器。 我应该怎么做才能用这样的脚本启动容器: CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'myuser'; GRANT ALL PRIVILEGES ON * . * TO 'myuser'@'localhost'; 这是我的实际docker命令: docker run -p 3306:3306 –name mysql-server -e MYSQL_ROOT_PASSWORD=root -d mysql:latest 有人能帮我吗? […]

运行MSSQL并在docker上运行脚本

我想运行MSSQL数据库,然后运行一个脚本,在其中创build一些表。 最后,我希望得到的容器是一个带有预先创build的数据库的SQL Server实例。 我目前的dockerfile: FROM microsoft/mssql-server-linux:2017-latest RUN apt-get update RUN apt-get -y install python3 python3-pip RUN mkdir -p /usr/src/app/ COPY requirements.txt /usr/src/app/requirements.txt RUN pip3 install -r /usr/src/app/requirements.txt COPY . /usr/src/app/ # ENTRYPOINT ./opt/mssql/bin/sqlservr CMD python3 /usr/src/app/apply_schema.py 问题是MSSQL不能以这种方式运行,只有python脚本运行(并且可预测的是无法连接到数据库)。 我怎么能先运行MSSQL,然后运行脚本?

dockerfile postgresl创buildangular色

PostgreSQL 10 我正在尝试在启动时在Docker容器中创build一个angular色 我试过创build这样的angular色: gosu postgres pg_ctl start -D /var/lib/postgresql/data if [ "${PGUSER}" != 'postgres' ]; then gosu postgres psql –command="CREATE USER ${PGUSER} SUPERUSER WITH PASSWORD '${PGPASSWORD}';" –echo-hidden –echo-queries fi gosu postgres pg_ctl stop -w -D /var/lib/postgresql/data 这仍然给我致命一击:angular色“grafadmin”不存在 当试图创build一个数据库: gosu postgres createdb -O grafadmin grafana 我也试过: cat > ${HOMEDIR}/user.sql <<SQL DO $body$ BEGIN IF NOT […]

似乎无法让我的.Net核心应用程序与SQL Server在Docker容器中工作

我正在阅读亚当·弗里曼(Adam Freeman)撰写的“ASP.Net Core MVC Essential Angular”第4章。 我一直在试图让初始数据库在Docker容器中对SQL Server运行。 这是他的原始docker-compose.yml文件: version: "3" services: database: image: "microsoft/mssql-server-linux:ctp2 0" ports: – 5100:1433 environment: – ACCEPT_EULA=Y – SA_PASSWORD=mySecret123 当我尝试运行这个文件的应用程序时,我得到了一个错误的东西的影响:“没有find这个SQL Server的清单”所以我改变了: image: "microsoft/mssql-server-linux:ctp2 0" 至 image: "microsoft/mssql-server-linux:latest" 并运行: docker-compose up 似乎工作。 但现在我仍然得到: SqlException: Cannot open database "SportsStore" requested by the login. The login failed. Login faild for 'sa' 这是其余的设置。 appsettings.json […]

从运行在Docker容器上的jasperserver失败的SQLServer连接?

我在docker集装箱运行jasperserver-pro(试用版)运行良好。 我在Azure云上有一个sqlserver。 当我尝试创build从运行在docker容器上的jasperserver到sqlserver的连接时,我无法连接。 我下载mysql的jdbc驱动程序,并上传到jasperserver。 以下是错误。 java.sql.SQLNonTransientConnectionException:无法连接到buyeatest2sqldwserver.database.windows.net:1433:在org.mariadb.jdbc的org.mariadb.jdbc.internal.util.ExceptionMapper.get(ExceptionMapper.java:123)处重置连接。 java.sql.DriverManager上的java.sql.DriverManager.getConnection(Unknown Source)上的org.mariadb.jdbc.Driver.connect(Driver.java:110)处的internal.util.ExceptionMapper.throwException(ExceptionMapper.java:69)。 getConnection(未知源)在org.apache.commons.dbcp.DriverManagerConnectionFactory.createConnection(DriverManagerConnectionFactory.java:75)在com.jaspersoft.jasperserver.api.engine.jasperreports.service.impl.JdbcDriverManagerConnectionFactory.createConnection(JdbcDriverManagerConnectionFactory.java:36 )在org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:582)在org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:1148)在org.apache.commons.dbcp。 PoolingDataSource.getConnection(蒲慕明 (com.jaspersoft.jasperserver.api.engine.jasperreports.service.impl.JdbcDataSourceService.testConnection(JdbcDataSourceService.java:85)at com.jaspersoft.jasperserver.remote.connection.JdbcConnectionStrategy.createConnection(JdbcConnectionStrategy。 java:75)at com.jaspersoft.jasperserver.remote.connection.JdbcConnectionStrategy.createConnection(JdbcConnectionStrategy.java:55)at com.jaspersoft.jasperserver.remote.connection.ConnectionsManager.createConnection(ConnectionsManager.java:88)at com.jaspersoft .jasperserver.jaxrs.connection.ConnectionsJaxrsService.createConnection(ConnectionsJaxrsService.java:90)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)at sun.reflect.DelegatingMethodAccessorImpl.invoke(未知的来源)在com.sun.jersey.spi.container.JavaMethodInvokerFactory的java.lang.reflect.Method.invoke(未知来源)$ 1.invoke(JavaMethodInvokerFactory.java:60)at com.sun.jersey (ResourceJavaMethodDispatcher.java:75).server.impl.model.method.dispatch.Abs​​tractResourceMethodDispatchProvider $ ResponseOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:205)at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75) com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:302)at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108) com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)at com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:84) com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1542)at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1473)at com.sun .jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1419)at com.sun.jersey.server.i mpls.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1409)at com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:409)at com.sun.jersey.spi.container.servlet。 ServletContainer.service(ServletContainer.java:558)at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:733)at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)at org.apache.tomcat.websocket.server.WsFilter .doFilter(WsFilter.java:52)org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)at org。 owasp.csrfguard.CsrfGuardFilter.doFilter(CsrfGuardFilter.java:88)at com.jaspersoft.jasperserver.api.security.csrf.JSCsr org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:260)org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:343)org.springframework.doFilter(JSCsrfGuardFilter.java:72)org.springframework.doFilter(DelegatingFilterProxy.java:260)at org .apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)at […]

docker-compose:执行数据库脚本

我使用docker-compose和dockerfile设置本地mssql数据库。 我可以在这里使用这个例子: https://github.com/mcmoe/mssqldocker 它在启动时执行数据库脚本来创build数据库。 我现在正在运行几个SQL脚本来设置数据库。 所以我可以运行: docker-compose build 然后… docker-compose up Docker将启动mssql并运行脚本来创build我的数据库,包含表,视图和预填充数据的模式。 但是,如果我运行: docker-compose stop 然后运行: docker-compose up 它试图再次运行所有的脚本,这是不好的(很多错误)。 理想情况下,我只想这一次发生。 有没有办法告诉docker不运行脚本,如果他们已经跑了? 我真的想减less本地数据库的设置真的是一回事: docker-compose up – 应该尽一切努力。 编辑: 我尝试使用以下包装SQL脚本: if [ ! -d "/var/lib/mssql/data" ]; then # scripts in here fi 但它总是跳过它们!

SQLexception只发生在三台服务器中的一台上

我们在Java中准备好的语句有问题。 这个例外似乎很清楚: Root Exception stack trace: com.microsoft.sqlserver.jdbc.SQLServerException: The statement must be executed before any results can be obtained. at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:170) at com.microsoft.sqlserver.jdbc.SQLServerStatement.getGeneratedKeys(SQLServerStatement.java:1973) at org.apache.commons.dbcp.DelegatingStatement.getGeneratedKeys(DelegatingStatement.java:315) 它基本上表明,我们正试图获取查询结果之前,已被执行。 听起来似乎有道理。 现在,导致此exception的代码如下所示: … preparedStatement.executeUpdate(); ResultSet resultSet = preparedStatement.getGeneratedKeys(); if(resultSet.next()) { retval = resultSet.getLong(1); } … 正如你所看到的,我们在执行语句之后获取查询结果。 在这种情况下,我们试图从INSERT查询的ResultSet中获取生成的密钥,然后我们才成功执行。 问题 我们在三个不同的服务器上运行这个代码(在Docker容器中进行负载均衡)。 奇怪的是,这个exception只发生在第三个docker服务器上。 其他两个docker服务器从来没有遇到过这个exception。 额外:失败的查询每天执行约13000次。 (4500由服务器3处理)大多数情况下,查询在服务器3也能正常工作。 有时候,让我们说每天20次,查询失败。 总是相同的查询,始终是相同的服务器。 从来没有其他的服务器。 我们试过的 我们检查了软件版本。 但是,这一切都是一样的,因为所有的服务器都运行相同的docker图像。 我们更新到Java的最新Microsoft […]