Connect to mysql server with one url but have multiple masters I am looking to have one URL like master.mydb.com, but under the hood I want to be able to access databases on slave1.mydb.com or slave2.mydb.com.
The reason for this is we have a massive number of near identical databases on each server, but very different data on each database. kinda like this:
slave1.mydb.com has databases
p1
p2
p3

slave2.mydb.com has databases
p4
p5
p6

all of those databases will have the exact same tables in them, but when my server accesses the data I just want to be able to connect to the cluster, and not have to worry about figuring out where the database p4 is stored, and making a connection slave2-mydb.com. In production we will probably have something more like slave[1-20].mydb.com with
This isn't a replication problem to solve. Something like spider, max scale or vitess. Also, see the Percona toolkit for comparing tables.
Of course internally you could have some DNS based mechanism like p5.mydb.com to indicate these server has p5 and use this in the application's connection to the database.
If you have same databases in all slaves then you need a load balancer, which you can achieve with haproxy, ngnix. If you want to split read write between slave and master then you can look into proxySQL. If you have different databases then you need to manage that in the connection strings.