Easy way deploy and manage mysql database to linux server

Let assume that you have setup the linux server with mysql. Now you want to deploy the database to the server you have created on your developement enviroment. 

You development enviroment may be windows or mac or linux with the gui but server are run only cli.

So it is necessary to know the easy way to deploy database to the server with just cli

Importing the mysql database to mysql using the cli

1) Export the sql file of the database from your development enviroment.

2) Copy the sql file to the serve using the sftp.

3) Now import the sql file to you mysql using this comman snippet

    $ mysql -u [username] -p < [path/to/your/sql/file] 

    $ password : [your password ] [will be invisible on screen]

After sucessfull import of sql file your database will ready to be used.

Note that if there is any error during the import than it will print the error on the screen but in case of successful import it will not generate any response.

Now to access the database deployed on the server you may use the phpmyadmin. But it come at the cost of php. Your production application might not using the phpmyadmin. 

To overcome this you can use another approch to access the remote mysql server using the mysql client.

Remote Mysql Connection

To enable the remote access for the mysql remote access you have to enable the remote access to the user run this command

GRANT ALL PRIVILEGES ON *.* TO '[username]'@'[host]' IDENTIFIED BY '[password]'

Here [username] is the user name for which you want to enabel the remote access. and [host] is the host for which you want to enable the remote acess. 
[host] may be an ip address or the dns name of host.

After this step you can connect to the remote mysql server using your local mysql client

Mysql clients

For windows : mysql workbench
For Mac : sequelPro
For Linux  : mysql workbench