Hướng dẫn mysql command line

Đối với người sử dụng linux thì việc sử dụng MySQL commandline là thường xuyên, bài viết này sẽ hướng dẫn bạn làm quen với mysql commandline.

 Đặt password cho user root của mysql

# mysqladmin -u root password newpassword

 Đổi password cho user root

# mysqladmin -u root -p oldpassword newpassword

 Kết nối MySQL từ commandline

$mysql-hlocalhost-umysqlusername-p

Bấm enter và nhập password. Nếu kết nối thành công bạn sẽ thấy dòng nhắc $mysql>

  • Nếu bạn muốn truy cập vào bằng địa chỉ IP, thay localhost bằng địa chỉ IP
  • mysqlusername là tên account sẽ dùng để kết nối

Chú ý: tất cả các câu lệnh mysql trên commandline phải kết thúc bằng dấu ;

 Một số lệnh thường dùng

mysql>showdatabases;           #Liệt kê danh sách các database

mysql>createdatabaseclouddb;  #Tạo database clouddb

mysql>useclouddb;              #Sử dụng database clouddb, mọi câu lệnh tiếp theo sẽ tác động lên database này

mysql>createtablemember(useridint(7),usernametext);#Tạo bảng member có 2 trường là userid và username

Các câu lệnh khác như INSERT INTO, SELECT, ALTER… cú pháp cũng giống như MS SQL

mysql>selectuserid,usernamefrommember;

mysql>insertintomember(userid,username)values(1,'cloudserver');

mysql>deletefrommember;

 Một số lệnh liên quan tới quản lý User

Tạo User MySQL

mysql>grantusageon*.*tousername@localhostidentified by'password';

mysql>flushprivileges;

Bạn thay username và password mà mình muốn vào lệnh trên

Gán quyền user truy cập database

mysql>grantallprivilegesonusername.*todatabasename@localhost;

mysql>flushprivileges;

Để máy khác có thể kết nối tới database thông qua user này, bạn cần thay localhost ở trên bằng địa chỉ IP của máy

 Một số lệnh liên quan tới quản trị

Liệt kê số concurrent connection kết nối tới database, các query đang thực hiện…

mysql>SHOWSTATUSWHERE`variable_name`like'%conn%';           # number connection to mysql    

mysql>showprocesslist;                                       # check connection concurrent

mysql>SHOWSTATUSWHERE`variable_name`='Threads_connected';# check open connection

mysql>SHOWOPEN TABLES;                                       # display the lock status of all the tables in MySQL.

mysql>showprocesslist\G;                                     # list current query,

                                                               # chi hiển thị 100 kí tự đầu tiên của query

mysql>showfullprocesslist;                                  # hiển thị full query

Liệt kê variables trong mysql

mysql>SHOWVARIABLESLIKE"general_log%";          # lấy đường dẫn lưu file log lệnh sql

 Thay đổi giá trị variables trong mysql

mysql>SETVARIABLE_NAME=VALUE;                       # set giá trị cho biến VARIABLE_NAME

mysql>set globalgeneral_log=ON;                       # enable log all sql query, kiem tra lai

                                                        # bang lenh SHOW VARIABLES LIKE "general_log%";