MOCKSTACKS
EN
Questions And Answers

More Tutorials









NodeJS MySQL Connection Pool

Using a connection pool without database


Achieving multitenancy on database server with multiple databases hosted on it.

Multitenancy is common requirement of enterprise application nowadays and creating connection pool for each database in database server is not recommended. so, what we can do instead is create connection pool with database server and than switch between databases hosted on database server on demand.

Suppose our application has different databases for each firm hosted on database server. We will connect to respective firm database when user hits the application. here is the example on how to do that:

var pool = mysql.createPool({
 connectionLimit : 10,
 host : 'example.org',
 user : 'bobby',
 password : 'pass'
 });

pool.getConnection(function(err, connection){
 if(err){
 return cb(err);
 }
 connection.changeUser({database : "firm1"});
 connection.query("SELECT * from history", function(err, data){
 connection.release();
 cb(err, data);
 });
});

Let me break down the example:

When defining pool configuration i did not gave the database name but only gave database server i.e

{
 connectionLimit : 10,
 host : 'example.org',
 user : 'bobby',
 password : 'pass'
}

so when we want to use the specific database on database server, we ask the connection to hit database by using:

 connection.changeUser({database : "firm1"});


Conclusion

In this page (written and validated by ) you learned about NodeJS MySQL Connection Pool . What's Next? If you are interested in completing NodeJS tutorial, your next topic will be learning about: NodeJS MSSQL Intergration.



Incorrect info or code snippet? We take very seriously the accuracy of the information provided on our website. We also make sure to test all snippets and examples provided for each section. If you find any incorrect information, please send us an email about the issue: mockstacks@gmail.com.


Share On:


Mockstacks was launched to help beginners learn programming languages; the site is optimized with no Ads as, Ads might slow down the performance. We also don't track any personal information; we also don't collect any kind of data unless the user provided us a corrected information. Almost all examples have been tested. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. By using Mockstacks.com, you agree to have read and accepted our terms of use, cookies and privacy policy.