服务器测评网
我们一直在努力

Linux下MySQL命令怎么用?常用命令及参数详解

在Linux环境下,MySQL命令是数据库管理与操作的核心工具,无论是系统管理员还是开发人员,掌握这些命令都能高效完成数据库的创建、查询、维护等任务,以下将从基础连接、数据库操作、表管理、数据查询、权限控制及维护优化六个方面,详细介绍Linux下MySQL命令的使用方法。

Linux下MySQL命令怎么用?常用命令及参数详解

基础连接与退出

连接MySQL是操作的前提,常用命令为mysql,默认情况下,通过mysql -u root -p可使用root用户登录,系统会提示输入密码,若需连接远程服务器,可添加-h参数,如mysql -u root -p -h 192.168.1.100 -P 3306-P指定端口号),登录成功后,mysql>提示符表示已进入交互界面,输入exitquit可退出,或使用快捷键Ctrl+D

数据库的创建与管理

数据库是存储数据的基础容器,创建数据库使用CREATE DATABASE语句,例如CREATE DATABASE mydb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;,指定字符集为utf8mb4以支持多语言,若数据库已存在,可添加IF NOT EXISTS避免报错,删除数据库则用DROP DATABASE mydb,此操作不可逆,需谨慎执行。

查看所有数据库可通过SHOW DATABASES;,切换当前数据库使用USE mydb;,若需查看当前数据库大小,可执行SELECT table_schema AS "Database", ROUND(SUM(data_length + index_length) / 1024 / 1024, 2) AS "Size (MB)" FROM information_schema.tables WHERE table_schema = "mydb";

数据表的创建与维护

数据表是数据库的核心结构,创建表需定义字段名、数据类型及约束。

CREATE TABLE users (
    id INT AUTO_INCREMENT PRIMARY KEY,
    username VARCHAR(50) NOT NULL,
    email VARCHAR(100) UNIQUE,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

AUTO_INCREMENT表示自增主键,NOT NULL禁止空值,UNIQUE确保字段唯一,DEFAULT CURRENT_TIMESTAMP设置默认值为当前时间。

修改表结构可通过ALTER TABLE,如添加字段ALTER TABLE users ADD age INT;,修改字段类型ALTER TABLE users MODIFY email VARCHAR(150);,删除字段ALTER TABLE users DROP age;,删除表使用DROP TABLE users;,若需判断表是否存在,可加IF EXISTS

Linux下MySQL命令怎么用?常用命令及参数详解

数据的增删改查(CRUD)

插入数据:使用INSERT INTO,例如INSERT INTO users (username, email) VALUES ("alice", "alice@example.com");,若需批量插入,可使用逗号分隔多组值。

查询数据SELECT是核心命令,SELECT * FROM users;查询所有字段,SELECT username, email FROM users;查询指定字段,添加条件查询用WHERE,如SELECT * FROM users WHERE age > 18;,排序用ORDER BY(如ORDER BY created_at DESC降序),限制数量用LIMIT(如LIMIT 10)。

更新数据:通过UPDATE实现,例如UPDATE users SET email = "new_email@example.com" WHERE username = "alice";,务必添加WHERE避免全表更新。

删除数据DELETE FROM users WHERE username = "alice";同样需配合WHERE,若需清空表,可用TRUNCATE TABLE users;(比DELETE更快且不记录日志)。

用户与权限管理

MySQL的安全性依赖于权限控制,创建用户使用CREATE USER "user1"@"localhost" IDENTIFIED BY "password";,授权则通过GRANT,如GRANT SELECT, INSERT ON mydb.* TO "user1"@"localhost";(授予mydb数据库的查询和插入权限),刷新权限使配置生效:FLUSH PRIVILEGES;

撤销权限用REVOKE,如REVOKE INSERT ON mydb.* FROM "user1"@"localhost";,删除用户则执行DROP USER "user1"@"localhost";,查看用户权限可运行SHOW GRANTS FOR "user1"@"localhost";

Linux下MySQL命令怎么用?常用命令及参数详解

维护与优化

定期维护数据库至关重要,备份表数据可通过mysqldump -u root -p mydb users > users_backup.sql,恢复数据用mysql -u root -p mydb < users_backup.sql,优化表性能可执行OPTIMIZE TABLE users;,重建表并回收碎片空间。

查看当前运行状态使用SHOW PROCESSLIST;,分析查询性能可通过EXPLAIN SELECT * FROM users WHERE username = "alice";,查看表索引状态用SHOW INDEX FROM users;,若需关闭或重启MySQL服务,在Linux中可通过systemctl stop mysqlsystemctl start mysql管理。

掌握以上MySQL命令,能高效完成Linux环境下的数据库日常操作,结合实际场景灵活运用,可进一步提升数据管理的效率与安全性。

赞(0)
未经允许不得转载:好主机测评网 » Linux下MySQL命令怎么用?常用命令及参数详解