如下命令表示使用root用戶(mySQL的root用戶,非系統root用戶)連接到mysql數據庫,-u表示指定用戶,-p表示將會提示輸入密碼,-u與root用戶名之間的空格可省略。
mysql -u root -p
如下命令表示使用root用戶連接數據庫,并且直接以明文的方式指定密碼,注意,下例中的密碼為123123,密碼與-p選項之間不能存在空格。
mysql -u root -p123123
在連接mysql時,可以直接指定將要登錄的具體的數據庫,使用-D指定數據庫名稱,如下命令表示連接mysql數據庫后直接使用test數據庫。
mysql -u root -D test -p123123
在本地連接到mysql時,可以指定通過哪個套接字文件連接到數據庫,通過-S指定套接字位置。
mysql -u root -p -S /var/lib/mysql/mysql.sock
在連接到mysql時,可以指定要連接到遠程的哪一臺主機的mysql上,也可以指定端口,-h指定mysql主機,-P大寫,指定mysql服務對應的端口,連接的前提是已經授權當前客戶端的IP地址能夠連接到數據庫。Linux就該這么學
mysql -u root -p -h 192.168.1.103 -P 3306
連接數據庫的同時執行對應命令,并且返回命令對應的結果,并不會進入mysql提示符。
示例如下,表示連接數據庫的同時,執行-e選項后面跟隨的sql語句,并且返回語句執行的結果。
mysql -u root -p123123 -e 'use mysql; select user,host,password from user;'
mysql -uroot -p123123 -e 'create database if not exists testdb; show databases;'
連接數據庫的常用選項
–host=host_name, -h host_name:服務端地址;
–user=user_name, -u user_name:用戶名;
–port=port_num, -P port_num:服務端端口;
–socket=path, -S path
–database=db_name, -D db_name:
–compress, -C:數據壓縮傳輸
–execute=statement, -e statement:非交互模式執行SQL語句;
–vertical, -E:查詢結果縱向顯示;
–protocol={TCP|SOCKET|PIPE|MEMORY