问题描述
typegraphql,typeorm,具有主从复制的MysqL。
我已为 MysqL 配置了具有独立实例的主数据库和从属数据库,并且工作正常。我遇到错误
通过Typeorm连接时。这是我的 ormconfig.json
{
"type": "MysqL","logging": true,"replication": {
"master":
{
"host": "192.168.0.250","port": 3306,"username": "root","password": "test#123","database": "master","synchronize": true,"extra": {
"connectionLimit": 5
}
},"slaves": [
{
"host": "192.168.0.175","extra": {
"connectionLimit": 5
}
}
]
},"entities": [
"src/entity/**/*.ts"
],"migrations": [
"src/migration/**/*.ts"
],"subscribers": [
"src/subscriber/**/*.ts"
],"cli": {
"entitiesDir": "src/entity","migrationsDir": "src/migration","subscribersDir": "src/subscriber"
}
}
import { gqSchema } from './schema';
import "reflect-Metadata";
import { createConnection } from "typeorm";
import { ApolloServer } from "apollo-server";
async function main() {
await createConnection().then(async(res) => {
console.log(res)
console.log("Database Connected")
const schema = await gqSchema()
const server = new ApolloServer({
schema,context: ({ req }: any) => ({ req })
})
await server.listen(4000)
console.log("Server has started!")
}).catch(err => {
console.log("err",err)
})
}
main();
还有我的resolver.ts文件
@Resolver()
export class UserResolver {
/**
* query
*/
@Authorized()
@Query(() => User)
async hello(
@Arg("firstName") firstName: string,): Promise<User | undefined > {
const slaveQueryRunner = getConnection().createqueryRunner("slave");
try {
const connection = getConnection().getRepository(User);
const usersList = await connection.createqueryBuilder()
.from(User,"user")
.setQueryRunner(slaveQueryRunner)
.where("user.firstName = ",{firstName})
.getone();
console.log(usersList)
} finally {
slaveQueryRunner.release();
}
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)