0 Deploying RockRMS on AWS with RDS 8 Mark Coveny posted 5 Years Ago Hello,I'm new to developing with Asp.net core and I'm not familiar with Web Forms, but I'm looking to deploy RockRMS in AWS with their MySQL flavor Aurora. I can't find any articles or walkthroughs on using MySQL for this application so I downloaded the source files, but the connection string setup is different than what I'm used to. I'm used to seeing something like:Startup.csservices.AddDbContext<AppDbContext>(options => options.UseMySql( Configuration.GetConnectionString("MySQL")));User Secrets"ConnectionStrings": { "MySQL": "Server=localhost;user id=root;password=<password>;port=3306;Database=<database>" }dbcontextusing Microsoft.AspNetCore.Identity.EntityFrameworkCore; using Pomelo.EntityFrameworkCore.MySql;using Microsoft.AspNetCore.Identity.EntityFrameworkCore; using Pomelo.EntityFrameworkCore.MySql;public AppDbContext(DbContextOptions<AppDbContext> options) : base(options) { }public DbSet<AppUser> AppUser { get; set; }blah blahI see the rock.data.DbContext.cs and rock.data.RockContext.cs file so I should be able to swap out "nameOrConnectionString" with "MySQL" right? Then I'd need to add "using Pomelo.EntityFrameworkCore.MySql;" and that should be good to go right? The DbContext looks differentpublic DbContext( string nameOrConnectionString ) : base( nameOrConnectionString ) { }but this part from the RockContext looks familiar to me but the notes indicate that it's just for something other than the default connection string:public RockContext( string nameOrConnectionString ) : base( nameOrConnectionString ) { }The app.config file is a bit confusing for me. There seems to be one for each project and some reference to the database in different ways. Will I need to edit all of these? I see in rock.app.config references entity frameworks I assume this section is where I would set up the DB service and change it to MySQL right? <entityFramework> <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework"> <parameters> <parameter value="mssqllocaldb" /> </parameters> </defaultConnectionFactory> <providers> <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" /> </providers> </entityFramework>In RockWeb.App_Code.Startup.cs I would need to add the service I think, but I don't see any services set up in here.I'm also seeing several references in the RockWeb.Bin.EntityFramework.xml to "nameOrConnectionString" that I assume would need to be changed as well? Lastly, I don't see a way to manage secrets in this version. How do you control sensitive information like the connection string password information at?Any help would be appreciated. The church that I'm working with was hit with a rather large bill for licensing of SQL in Azure, and they'd like to do a proof of concept for running this in AWS on RDS, and I'd like to see if I can get Aurora working as it's much cheaper than SQL RDS. So any help would be appreciated.Thanks in advance for being understanding that I'm new to this.Mark
Daniel Hazelbaker 5 years ago Also, the normal way to deploy Rock in Azure is a single VM for the IIS server and then to use Azure SQL Database - this eliminates the SQL licensing issues and also allows you to quickly scale the SQL database up and down as needed.