标签: multiple-databases

Postgres数据库具有不同的编码

我尝试在postgres中创建具有不同编码的数据库(我使用PgAdmin作为我的数据库管理器),但是当我尝试使用非UTF8编码创建数据库时,PgAdmin向我显示错误,说我无法创建数据库,因为它与我当前的语言环境"Portuguese_Brazil_1252"不匹配,并且LC_Ctype配置需要编码"WIN1252".

如何在PostGres中配置它?我正在使用Windows XP(不是我选择)的区域设置测试服务器下运行它.是否可以创建具有不同编码的数据库或该行为是PostGres限制?这里有人已经成功管理了吗?

谢谢

database postgresql encoding multiple-databases

3
推荐指数
1
解决办法
6748
查看次数

Spring + Hibernate + JPA +多个数据库

我有一个Spring + Hibernate + JPA应用程序.登录时,用户可以从要连接的DB列表中进行选择(这些是要求).所有数据库都具有相同的模式,因此将使用相同的实体和DAO.

现在我有一个EntityManager(目前正在使用一个数据库),它注入DAO,如下所示:

@PersistenceContext
private EntityManager entityManager;
Run Code Online (Sandbox Code Playgroud)

有没有办法让DAO根据从服务层接收的参数/属性自动接收entityManager(由Spring管理)?(Web层发送一种上下文,所选数据库的名称/代码/ id将在那里).

或者我必须自己管理(创建所有的entityManagers,将它们放在一张地图中,告诉DAO每个调用使用哪一个)?

我在问这个问题之前做了一些研究,但结果没有结果 - 大多数问题涉及的模型分布在2个或更多DB以及跨越多个DB的事务中,但对我来说情况并非如此.

在我的情况下,一旦用户连接,就好像他连接到只有一个实体管理器的应用程序,即他选择的数据库.DB的中期或其他任何此类内容之间没有切换.

谢谢.

spring hibernate jpa entitymanager multiple-databases

3
推荐指数
1
解决办法
8513
查看次数

使用多个数据库时,Grails 2无法使用spring security登录

在Grails的2.0.3,我安装了Spring Security的核心,并创建了用户,并的UserRole角色对象按教程:http://blog.springsource.org/2010/08/11/simplified-spring-security-with-grails /

一切顺利,直到我决定添加第二个数据源以准备从其他数据库访问对象.DataSource.groovy看起来像这样:

test {
    dataSource_product {
        dbCreate = "update"
        url = "jdbc:mysql://localhost/products"
        pooled = true
        driverClassName = "com.mysql.jdbc.Driver"
        username = "blah"
        password = "blah"
        loggingSql = true
        dialect = 'org.hibernate.dialect.MySQL5InnoDBDialect'
    }
    dataSource {
        dbCreate = "update"
        url = "jdbc:mysql://localhost/core"
        pooled = true
        driverClassName = "com.mysql.jdbc.Driver"
        username = "blah"
        password = "blah"
        loggingSql = true
        dialect = 'org.hibernate.dialect.MySQL5InnoDBDialect'
    }
}
Run Code Online (Sandbox Code Playgroud)

现在我无法登录 - 即使我所做的只是添加datasource_product.如果我对此进行评论并重新创建用户(在Bootstrap.groovy中),那么我可以再次登录.Bootstrap.groovy包含:

def init =
{ servletContext ->

    // Add in roles
    Role.withTransaction { 
        def adminRole = …
Run Code Online (Sandbox Code Playgroud)

spring-security multiple-databases grails-2.0

3
推荐指数
1
解决办法
1762
查看次数

我正在使用Django与远程Oracle数据库,并获得"表不存在"错误

每当我在远程Oracle数据库的表上使用Django ORM执行简单查询时,我都会收到此错误:

>>> from apps.dl.models import Article
>>> Article.objects.using('dl').all()
Traceback (most recent call last):
  File "<console>", line 1, in <module>
  File "/var/www/acm.local/server-env/lib/python2.6/site-packages/django/db/models/query.py", line 68, in __repr__
    data = list(self[:REPR_OUTPUT_SIZE + 1])
  File "/var/www/acm.local/server-env/lib/python2.6/site-packages/django/db/models/query.py", line 83, in __len__
    self._result_cache.extend(list(self._iter))
  File "/var/www/acm.local/server-env/lib/python2.6/site-packages/django/db/models/query.py", line 269, in iterator
    for row in compiler.results_iter():
  File "/var/www/acm.local/server-env/lib/python2.6/site-packages/django/db/models/sql/compiler.py", line 672, in results_iter
    for rows in self.execute_sql(MULTI):
  File "/var/www/acm.local/server-env/lib/python2.6/site-packages/django/db/models/sql/compiler.py", line 727, in execute_sql
    cursor.execute(sql, params)
  File "/var/www/acm.local/server-env/lib/python2.6/site-packages/django/db/backends/util.py", line 15, in execute
    return self.cursor.execute(sql, params)
  File "/var/www/acm.local/server-env/lib/python2.6/site-packages/django/db/backends/oracle/base.py", line 507, in …
Run Code Online (Sandbox Code Playgroud)

oracle django multiple-databases ora-00942

2
推荐指数
1
解决办法
1715
查看次数

通过Spring和Hibernate管理多个动态创建的数据库的最佳实践是什么?

假设对于每个客户,当客户订阅服务时,您必须动态创建数据库,所有数据库都基于相同的模式.

随着客户的身份验证(一个主数据库管理所有客户详细信息),他们的唯一用户名用于访问相应的数据库并检索所需的信息.

问题1:上述问题是否可以被认为是解决此类问题的好方法,还是有更好的解决方案?

问题2:如果没有更好的解决方案,如何使用Spring和Hibernate实现?

编辑:我需要知道的是,如何在客户订阅时实现数据源创建,而无需编辑Spring配置文件.它需要自动化.

spring hibernate multiple-databases

2
推荐指数
1
解决办法
5764
查看次数

Yii:多个数据库连接失败

我阅读了yii文档,以下代码应该有效;

好吧,它没有.:))

db是主数据库

db1和db2是辅助数据库

这有什么不对?

该网站在线,在www.linkbook.co,并且它无法连接到任何数据库

'db' => array(
    'connectionString' => 'mysql:host=localhost;dbname=linkbookco',
    'emulatePrepare' => true,
    'username' => 'user',
    'password' => 'password',
    'charset' => 'utf8',
    'tablePrefix' => '',
),

    'db1' => array(
    'connectionString' => 'mysql:host=localhost;dbname=linkbookco1',
    'username'         => 'user',
    'password' => 'password',
    'charset' => 'utf8',
    'tablePrefix' => '',
    'class'            => 'CDbConnection'          // DO NOT FORGET THIS!
),

    'db2' => array(
    'connectionString' => 'mysql:host=localhost;dbname=linkbookco2',
    'username'         => 'user',
    'password' => 'password',
    'charset' => 'utf8',
    'tablePrefix' => '',
    'class'            => 'CDbConnection'          // DO …
Run Code Online (Sandbox Code Playgroud)

database multiple-databases yii

2
推荐指数
1
解决办法
1519
查看次数

Laravel API连接到多个数据库

我正在使用Laravel(Lumen)构建REST API.我们的想法是,这个API为多个食品订购网站提供了后端.它们共享相同的后端逻辑(模型,控制器等).这样每个网站只需要它自己的前端应用程序,我打算为此使用Angular.每个网站都有自己的数据(产品,页面等),必须存储在不同的数据库中.

config/databases.php为了测试目的,我已经定义了多个连接.现在我可以在查询相应的数据库之前动态设置连接,如下所示:

class ProductController extends Controller
{
    /**
     * Display a listing of the resource.
     *
     * @return Response
     */
    public function index()
    {   
        $products = new Product;
        $products->setConnection('customer_two'); // <--
        $products = $products->get();

        return response()->json($products);
    }
}
Run Code Online (Sandbox Code Playgroud)

例如,可以使用缓存来完成相同的操作.

让API知道哪个客户的网站提出请求的最佳方法是什么?我需要指向正确的数据库.此外,这种方法是否会在性能方面造成任何问题?

api connection multiple-databases laravel-5 lumen

2
推荐指数
1
解决办法
2817
查看次数

具有多个数据库的Subsonic 3.0 LINQ模板

我正在评估SubSonic 3.0用于我们的业务,以替代我们的POCO对象.我是SubSonic的新手,昨天安装它.我已经到了可以使用3.0 LINQ T4模板连接到一个数据库的地步,并且已经被使用SubSonic能够连接到一个应用程序中的多个数据库的承诺所吸引.

我的问题是我找不到任何关于如何将T4模板与多个数据库一起使用的文档(例如添加另一个连接字符串,设置Settings.ttinclude等).

我搜索了谷歌和Stackoverflow的答案,看看如何做到这一点,或者它是否可行.任何帮助,将不胜感激.


所以我似乎能够通过向web.config添加另一个connectionString来使其工作,然后为该connectionString添加第二组模板,它可以工作,但它看起来并不"干净"甚至真的那么干我.

通过添加多个.dbml文件,似乎我可以使用.NET内置的LINQ做几乎相同的事情.

有人可以给我一些推理,为什么我们不应该只使用内置的LINQ支持而不是像SubSonic这样的第三方ORM?

subsonic t4 multiple-databases

1
推荐指数
1
解决办法
561
查看次数

如何在PHP Web应用程序中使用多个数据库?

我正在制作一个PHP Web应用程序,其中我使用MySQL作为数据库服务器,我想将一些表的备份从一个数据库备份到另一个数据库(其中包含该表).我创建了两个不同的连接,但表没有更新.

$dbcon1 = mysql_connect(DB_SERVER,DB_USER,DB_PASSWORD) or die(mysql_error());
$dbase1 = mysql_select_db(TEMP_DB_NAME,$dbcon)or die(mysql_error());

$query1=mysql_query("SELECT * FROM emp");

while($row = mysql_fetch_array($query1, MYSQL_NUM))
{
    $dbcon2 = mysql_connect(DB_SERVER,DB_USER,DB_PASSWORD) or die(mysql_error());
    $dbase2 = mysql_select_db(TEMP_DB_NAME2,$dbcon)or die(mysql_error());

    mysql_query("INSERT INTO backup_emp VALUES(null,'$row[1]',$row[2])");
    mysql_close($dbcon2);
}
Run Code Online (Sandbox Code Playgroud)

上面的代码从第一个数据库获取emp的数据,并将其更新到另一个数据库的另一个backup_emp表中.代码工作不正常,有没有其他方法这样做...请帮助.

php mysql multiple-databases

1
推荐指数
2
解决办法
7028
查看次数

带有Tomcat DBCP的Spring JDBC和多个数据源

我使用spring有多个数据源(适应多个mysql dbs)和使用tomcat dbcp.我得到一些奇怪的例外,比如

  • 找不到过程 - 当proc肯定存在于db中时
  • 无法从池中借用 - 本地开发设置,所以游泳池肯定不满

我觉得可能是这个问题,需要大家的投入:

jdbcTemplate在我的spring.xml每个查询中定义了一个对象,我需要触发,我调用jdbcTemplate.setDataSource()设置适当的数据源然后simplejdbccall(jdbctemplate)用来执行proc.

我是否应该同时定义多个jdbcTemplate对象,即每个定义的数据源一个.我在其上设置数据源jdbctemplate并执行存储过程的bean 被定义为prototype.

java spring spring-jdbc multiple-databases

1
推荐指数
1
解决办法
4682
查看次数

带有 ORM (Eloquent) 的 Slim 框架连接多个数据库

我使用 Slim Framework 和 Eloquent 4.1.x 作为项目的 ORM,需要连接到多个数据库。

我按照此链接设置 ORM。但是如何按照给定的教程连接到多个数据库?

在我的模型中,我有不同的文件用于不同数据库中的不同表。

像 User.php 文件有以下内容,

<?php
namespace Service\Framework\Model;

use Illuminate\Database\Eloquent\Model;

class Users extends Model {
  protected $table = 'users';
}
Run Code Online (Sandbox Code Playgroud)

该类使用 db_2 数据库中的 users 表。我想在此类中的一个方法中从默认数据库 db_1 切换。喜欢,

<?php

namespace Service\Framework\Model;

use Illuminate\Database\Eloquent\Model;

class Users extends Model {
  protected $table = 'users';

  public function getUsers() {
    // Switch the database to db_2
    $users = self::all();
    // Again switch back to default database db_1
    return $users;
  }
}
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?请帮我一些建议。

PS:我这里没有使用 Capsule。 …

orm multiple-databases slim eloquent

1
推荐指数
1
解决办法
4148
查看次数

NestJS - 每个模块使用多个 MongoDB 连接

有没有办法为每个模块连接多个 MongoDB 连接?

app.module.ts

@Module({
  imports: [
    MongooseModule.forRoot('mongodb://localhost/masterDB'),
    UserModule,
  ],
  controllers: [AppController],
  providers: [AppService],
})
export class AppModule { }
Run Code Online (Sandbox Code Playgroud)

同样,我们可以在另一个模块中定义另一个连接,它是 app.module 的子模块吗?

子模块.ts

@Module({
  imports: [
    MongooseModule.forRoot('mongodb://localhost/childDB'),
    MongooseModule.forFeature([{ name: 'child', schema: ChildSchema }]),
  ],
  controllers: [ChildController],
  providers: [ChildService],
})
export class ChildModule { }

Run Code Online (Sandbox Code Playgroud)

或以任何其他方式同时访问不同的数据库。

提前致谢!

multiple-databases mongoose mongodb node.js nestjs

1
推荐指数
2
解决办法
3504
查看次数

从Codeigniter中的其他DB切换动态数据库

mi文件config.php是:

$active_group = 'default';
$active_record = TRUE;
Run Code Online (Sandbox Code Playgroud)

db master是唯一的DB

$db['master']['hostname'] = "localhost";
$db['master']['username'] = "root"; 
$db['master']['password'] = ""; 
$db['master']['database'] = "admin_nb";
$db['master']['dbdriver'] = "mysqli"; 
$db['master']['dbprefix'] = ''; 
$db['master']['pconnect'] = FALSE; 
$db['master']['db_debug'] = TRUE; 
$db['master']['cache_on'] = FALSE; 
$db['master']['cachedir'] = ""; 
$db['master']['char_set'] = "utf8"; 
$db['master']['dbcollat'] = "utf8_general_ci";
Run Code Online (Sandbox Code Playgroud)

db app是DYNAMIC DB

$db['app']['hostname'] = 'localhost';
$db['app']['username'] = 'root';
$db['app']['password'] = '';
$db['app']['database'] = $my_bd_dynamic;
$db['app']['dbdriver'] = 'mysqli';
$db['app']['dbprefix'] = '';
$db['app']['pconnect'] = TRUE;
$db['app']['db_debug'] = TRUE;
$db['app']['cache_on'] = FALSE;
$db['app']['cachedir'] = '';
$db['app']['char_set'] = …
Run Code Online (Sandbox Code Playgroud)

database codeigniter dynamic multiple-databases switch-statement

0
推荐指数
1
解决办法
6501
查看次数