Home  >  Q&A  >  body text

Is it possible to create a separate database for each user on AWS RDS for MYSQL?

I'm creating an application that every business will have;

  1. Owner, is the user of some-business-name database,
  2. Some information about the business (this part will actually change the UI of my app)
  3. Employees (and the same user as the owner)
  4. Permissions (for employees. Owner’s permissions cannot be changed)
  5. Customers (every business has customers) ...etc

I need to create a new database for each business and use the unique business name as the database name

Is there a limit to the number of databases in AWS RDS for MYSQL? If so how can I solve this problem?

Note: I had to use aws to create this application

P粉068510991P粉068510991258 days ago352

reply all(1)I'll reply

  • P粉536532781

    P粉5365327812024-02-04 00:30:27

    View RDS FAQ to see "How many databases are there" or can I run the schema in a database instance? "Part. Accordingly:

    edit

    You asked in the comments if this would be suitable for your application. I personally have always found the "one environment per client" setup to be challenging. You must have good database upgrade scripting and coding practices. Debugging individual clients means understanding the code they run and the architecture they have. A multi-tenant solution may be easier, but comes with its own set of challenges when partitioning database data among customers. Yes, your solution will work. You didn't mention the server side other than the CDK, but if you're also going to partition your code that way, it'll be hard to know which client is running what software.

    No matter how you decide to do this, keep detailed information about each customer and the software version and database they are using. Hopefully the software you use will automatically update the schema as needed.

    reply
    0
  • Cancelreply