额 其实都是同一个Log,只是我这里用库名作为前缀区分一下
C#
//配置SQLSugar
builder.Services.AddScoped<ISqlSugarClient>(options =>
{
//配置数据库
SqlSugarClient client = new(
[
//主数据库 LanguageType:提示错误可以设置语言
new(){
ConfigId = "Master",
DbType = DbType.MySql,
IsAutoCloseConnection=true,
ConnectionString = builder.Configuration.GetConnectionString("MySQL"),
LanguageType = LanguageType.Chinese,
SlaveConnectionConfigs = [new() {HitRate = 10,ConnectionString = builder.Configuration.GetConnectionString("MySQLSlave") }]
},
//从数据库 LanguageType:提示错误可以设置语言
new(){ConfigId = "Slave",DbType = DbType.Sqlite,IsAutoCloseConnection = true,ConnectionString = builder.Configuration.GetConnectionString("SQLite"),LanguageType = LanguageType.Chinese}
],
db =>
{
//多租户主从库打印SQL
db.GetConnection("Master").Aop.OnLogExecuting = (sql, pars) =>
{
Console.WriteLine($"Master - {db.Ado.Connection.Database}:" + sql);
};
db.GetConnection("Slave").Aop.OnLogExecuting = (sql, pars) =>
{
Console.WriteLine("Slave:" + sql);
};
//连接超时30秒
db.Ado.CommandTimeOut = 30;
});