Top 20 ví dụ lệnh ‘mysqladmin’ dành cho quản trị viên database trong Linux – Cuongquach.com | mysqladmin
là một chương trình lệnh tiện ích tích hợp tương tác với MySQL server và thường được quản trị viên sử dụng để thực hiện một số tác vụ cơ bản như: thiết lập mật khẩu root MySQL, theo dõi tiến trình MySQL, phân quyền user, kiểm tra trạng thái máy chủ…..
Trong bài hướng dẫn này, hãy cùng CuongQuach tìm hiểu sự hữu dụng của lệnh mysqladmin
thông qua bài viết Top 20 ví dụ lệnh trong MySQL (mysqladmin) dành cho quản trị viên database trong Linux nhé.
Có thể bạn quan tâm chủ đề khác
– Cài đặt công cụ SQLBuddy trên CentOS quản lý MySQL
– Cài đặt MariaDB 10.2 trên CentOS 7
– Cấu hình thời gian khu vực timezone của dịch vụ MySQL
– Fix lỗi ‘MySQL has gone away’ khi import database
– Sự khác biệt giữa 2 tiến trình ‘mysqld’ và ‘mysqld_safe’
Contents
- 1. Đặt mật khẩu root MySQL
- 2. Thay đổi mật khẩu root MySQL
- 3. Check trạng thái MySQL có đang hoạt động hay không
- 4. Kiểm tra version MySQL server mà bạn đang hoạt động
- 5. Kiểm tra tình trạng hiện tại của MySQL server
- 6. Kiểm tra thông tin của tất cả các biến và giá trị trong MySQL Server
- 7. Xem tất cả các biến và giá trị của MySQL server
- 8. Làm sao để kiểm tra tất cả các tiến trình đang hoạt động trên MySQL server?
- 9. Tạo database trong MySQL server
- 10. Làm sao để xóa database
- 11. Reload/Refesh quyền MySQL
- 12. Làm sao để tắt MySQL server đúng cách?
- 13. Vài lệnh flush MySQL hữu ích
- 14. Làm thế nào để kill các tiến trình MySQL client trong trạng thái sleeping
- 15. Làm thế nào để chạy được nhiều lệnh mysqladmin cùng một lúc?
- 16. Connect đến MySQL server remote
- 17. Thực thi lệnh trên MySQL server remote
- 18. Làm thế nào để start/stop MySQL replication trên slave server
- 19. Làm sao để ghi thông tin debug của MySQL server vào log?
- 20. Xem thêm các option và cách sử dụng.
- Tổng kết
1. Đặt mật khẩu root MySQL
Nếu bạn mới cài đặt dịch vụ MySQL server thì thường chưa có bất kỳ thiết lập mật khẩu nào dành cho user root của MySQL (user này khác với user root trong Linux của bạn nha). Để đặt mật khẩu MySQL khi mới cài đặt xong, bạn sử dụng lệnh sau.
# mysqladmin -u root password YOURNEWPASSWORD
2. Thay đổi mật khẩu root MySQL
Nếu đã đặt mật khẩu rồi và bạn muốn đổi mật khẩu mới thì hãy sử dụng lệnh sau nha. Mật khẩu hiện tại là ‘123456‘ còn ‘xyz123‘ là mật khẩu bạn muốn đổi.
# mysqladmin -u root -p123456 password 'xyz123'
3. Check trạng thái MySQL có đang hoạt động hay không
Để xem trạng thái MySQL server đang là up hay down thì bạn sử dụng lệnh sau.
# mysqladmin -u root -p ping Enter password: mysqld is alive
4. Kiểm tra version MySQL server mà bạn đang hoạt động
# mysqladmin -u root -p version Enter password: mysqladmin Ver 8.42 Distrib 5.5.28, for Linux on i686 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Server version 5.5.28 Protocol version 10 Connection Localhost via UNIX socket UNIX socket /var/lib/mysql/mysql.sock Uptime: 7 days 14 min 45 sec Threads: 2 Questions: 36002 Slow queries: 0 Opens: 15 Flush tables: 1 Open tables: 8 Queries per second avg: 0.059
5. Kiểm tra tình trạng hiện tại của MySQL server
mysqladmin
có thể cho bạn biết thông tin trạng thái uptime, threads và queries cơ bản hiện tại.
# mysqladmin -u root -ptmppassword status Enter password: Uptime: 606704 Threads: 2 Questions: 36003 Slow queries: 0 Opens: 15 Flush tables: 1 Open tables: 8 Queries per second avg: 0.059
6. Kiểm tra thông tin của tất cả các biến và giá trị trong MySQL Server
Để kiểm tra tất cả thông tin các biến và giá trị đang hoạt động trên MySQL server, bạn sử dụng lệnh như sau.
# mysqladmin -u root -p extended-status Enter password: +------------------------------------------+-------------+ | Variable_name | Value | +------------------------------------------+-------------+ | Aborted_clients | 3 | | Aborted_connects | 3 | | Binlog_cache_disk_use | 0 | | Binlog_cache_use | 0 | | Binlog_stmt_cache_disk_use | 0 | | Binlog_stmt_cache_use | 0 | | Bytes_received | 6400357 | | Bytes_sent | 2610105 | | Com_admin_commands | 3 | | Com_assign_to_keycache | 0 | | Com_alter_db | 0 | | Com_alter_db_upgrade | 0 | | Com_alter_event | 0 | | Com_alter_function | 0 | | Com_alter_procedure | 0 | | Com_alter_server | 0 | | Com_alter_table | 0 | | Com_alter_tablespace | 0 | +------------------------------------------+-------------+
7. Xem tất cả các biến và giá trị của MySQL server
Để xem được tất cả các biến và giá trị của biến của MySQL server, bạn sử dụng lệnh sau
# mysqladmin -u root -p variables Enter password: +---------------------------------------------------+----------------------------------------------+ | Variable_name | Value | +---------------------------------------------------+----------------------------------------------+ | auto_increment_increment | 1 | | auto_increment_offset | 1 | | autocommit | ON | | automatic_sp_privileges | ON | | back_log | 50 | | basedir | /usr | | big_tables | OFF | | binlog_cache_size | 32768 | | binlog_direct_non_transactional_updates | OFF | | binlog_format | STATEMENT | | binlog_stmt_cache_size | 32768 | | bulk_insert_buffer_size | 8388608 | | character_set_client | latin1 | | character_set_connection | latin1 | | character_set_database | latin1 | | character_set_filesystem | binary | | character_set_results | latin1 | | character_set_server | latin1 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | | collation_connection | latin1_swedish_ci | +---------------------------------------------------+----------------------------------------------+
8. Làm sao để kiểm tra tất cả các tiến trình đang hoạt động trên MySQL server?
Lệnh sau đây sẽ hiển thị tất cả các tiến trình (process) đang hoạt động khi MySQL nhận truy vấn.
# mysqladmin -u root -p processlist Enter password: +-------+---------+-----------------+---------+---------+------+-------+------------------+ | Id | User | Host | db | Command | Time | State | Info | +-------+---------+-----------------+---------+---------+------+-------+------------------+ | 18001 | rsyslog | localhost:38307 | rsyslog | Sleep | 5590 | | | | 18020 | root | localhost | | Query | 0 | | show processlist | +-------+---------+-----------------+---------+---------+------+-------+------------------+
9. Tạo database trong MySQL server
# mysql -u root -p Enter password: mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | databasename | | mysql | | test | +--------------------+ 8 rows in set (0.01 sec) mysql>
10. Làm sao để xóa database
Rất đơn giản luôn nhé.
# mysqladmin -u root -p drop databasename Enter password: Dropping the database is potentially a very bad thing to do. Any data stored in the database will be destroyed. Do you really want to drop the 'databasename' database [y/N] y Database "databasename" dropped
11. Reload/Refesh quyền MySQL
Lệnh reload
thông báo cho server reload lại các tables được cấp quyền. Lệnh refresh
sẽ flush tất cả các tables và mở lại log file.
# mysqladmin -u root -p reload # mysqladmin -u root -p refresh
12. Làm sao để tắt MySQL server đúng cách?
Cách tắt như sau mới đúng cách nè, không là database dễ bị crash lắm đó.
# mysqladmin -u root -p shutdown Enter password:
Hoặc bạn cũng có thể tắt như sau:
# /etc/init.d/mysqld stop # /etc/init.d/mysqld start
13. Vài lệnh flush MySQL hữu ích
Đây là vài lệnh flush hữu ích kèm theo mô tả của chúng.
– flush-hosts: flush tất cả thông tin host từ host cache.
– flush-tables: flush tất cả tables.
– flush-threads: flush tất cả threads cache.
– flush-logs: flush tất cả thông tin log.
– flush-privileges: tải lại quyền của tables (giống reload).
– flush-status: xóa trạng thái của các biến.
# mysqladmin -u root -p flush-hosts # mysqladmin -u root -p flush-tables # mysqladmin -u root -p flush-threads # mysqladmin -u root -p flush-logs # mysqladmin -u root -p flush-privileges # mysqladmin -u root -p flush-status
14. Làm thế nào để kill các tiến trình MySQL client trong trạng thái sleeping
Đầu tiên bạn phải tìm xem ID của tiến trình sleep này là bao nhiêu.
# mysqladmin -u root -p processlist Enter password: +----+------+-----------+----+---------+------+-------+------------------+ | Id | User | Host | db | Command | Time | State | Info | +----+------+-----------+----+---------+------+-------+------------------+ | 5 | root | localhost | | Sleep | 14 | | | | 8 | root | localhost | | Query | 0 | | show processlist | +----+------+-----------+----+---------+------+-------+------------------+
Bây giờ xác định được là ID = 5 rồi đúng không, bạn kill process này như sau:
# mysqladmin -u root -p kill 5 Enter password: +----+------+-----------+----+---------+------+-------+------------------+ | Id | User | Host | db | Command | Time | State | Info | +----+------+-----------+----+---------+------+-------+------------------+ | 12 | root | localhost | | Query | 0 | | show processlist | +----+------+-----------+----+---------+------+-------+------------------+
Nếu bạn muốn kill nhiều process một lúc thì cách các ID này ra bằng dấu “,” nhé
# mysqladmin -u root -p kill 5,10
15. Làm thế nào để chạy được nhiều lệnh mysqladmin cùng một lúc?
Bạn có thể thực hiện giống như sau nhé, bằng cách đưa nhiều option vào lệnh mysqladmin
.
# mysqladmin -u root -p processlist status version Enter password: +----+------+-----------+----+---------+------+-------+------------------+ | Id | User | Host | db | Command | Time | State | Info | +----+------+-----------+----+---------+------+-------+------------------+ | 8 | root | localhost | | Query | 0 | | show processlist | +----+------+-----------+----+---------+------+-------+------------------+ Uptime: 3801 Threads: 1 Questions: 15 Slow queries: 0 Opens: 15 Flush tables: 1 Open tables: 8 Queries per second avg: 0.003 mysqladmin Ver 8.42 Distrib 5.5.28, for Linux on i686 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Server version 5.5.28 Protocol version 10 Connection Localhost via UNIX socket UNIX socket /var/lib/mysql/mysql.sock Uptime: 1 hour 3 min 21 sec Threads: 1 Questions: 15 Slow queries: 0 Opens: 15 Flush tables: 1 Open tables: 8 Queries per second avg: 0.003
16. Connect đến MySQL server remote
Bạn sử dụng option -h (host) đi kèm IP của máy chủ remote như lệnh sau là connect được nha.
# mysqladmin -h 192.168.1.14 -u root -p
17. Thực thi lệnh trên MySQL server remote
# mysqladmin -h 192.168.1.14 -u root -p status
18. Làm thế nào để start/stop MySQL replication trên slave server
# mysqladmin -u root -p start-slave # mysqladmin -u root -p stop-slave
19. Làm sao để ghi thông tin debug của MySQL server vào log?
Thông tin debug này bao gồm các khóa đang sử dụng, memory sử dụng và query và lệnh sau sẽ ghi các thông tin này vào log cho bạn.
# mysqladmin -u root -p debug Enter password:
20. Xem thêm các option và cách sử dụng.
Bạn có thể xem thêm các option hữu ích khác cũng như được mô tả các sử dụng thế nào bằng lệnh sau
# mysqladmin --help
Tổng kết
Như vậy là bài hướng dẫn sử dụng lệnh mysqladmin để quản lý cơ bản dịch vụ MySQL đã hoàn tất rồi. Cám ơn các bạn đã theo dõi và đừng quên ủng hộ CuongQuach nhé.
Nguồn: https://cuongquach.com/