MySQL -  When relational data needs to be stored and managed

MongoDB -  When flexibility and scalability with large amounts of unstructured data is needed

MySQL- When a stable and secure system is needed that is highly portable

MongoDB - When the data is not fixed and may grow and evolve over time

MySQL -  When there is a need for a system that has great scalability

MongoDB -  When you need to index on fields or sub documents in the document

MySQL -  When complicated queries that are not possible in NoSQL are needed

MongoDB -  When you need an agile and easy to manage system that can scale out easily