Linux MySQL 常用命令

一、MySQL服务

1.检查MySQL服务状态

sudo systemctl status mysql

2.启动MySQL服务

sudo systemctl start mysql

3.停止MySQL服务

sudo systemctl stop mysql

4.重启MySQL服务

sudo systemctl restart mysql

二、MySQL查询操作

1.登录MySQL

mysql -u 用户名 -p

根据提示输入该用户的密码,密码不会显示,请注意密码输入准确性。

2.查询数据库

SHOW DATABASES;

通过SHOW DATABASES;查看所有可用的数据库,然后使用USE命令选择一个数据库。

USE 数据库名称;

3.显示所有表

SHOW TABLES;

4.查询表数据

SELECT * FROM 表名 WHERE 条件;

如果只想执行一个简单的查询而不进入MySQL命令行界面,可以在命令行中使用-e选项直接执行查询:

mysql -u 用户名 -p -e "USE 数据库名称; SELECT * FROM 表名;"

5.查询所有用户

SELECT User, Host FROM mysql.user;

这条语句会列出所有的用户名以及他们允许连接的主机名。因为MySQL用户是由用户名和主机名共同组成的,所以同一个用户名可以存在于不同的主机上。

三、MySQL用户管理

1.查询用户权限

SHOW GRANTS FOR '用户名'@'主机名';

或者查询information_schema数据库中的USER_PRIVILEGES表来获得用户的权限信息:

SELECT * FROM information_schema.USER_PRIVILEGES;

从MySQL 5.7开始,performance_schema提供了accounts表,它包含了关于客户端账户的统计信息,包括用户名和主机:(适用于MySQL 5.7及以上版本)

SELECT USER, HOST FROM performance_schema.accounts;

2.创建新用户

CREATE USER '新用户名'@'主机名' IDENTIFIED BY '密码';

'新用户名'是你想要创建的用户名。

'主机名'是用户可以从哪里连接。通常使用'localhost'表示用户只能从本地服务器连接,使用'%'表示用户可以从任何主机连接。

'密码'是用户的密码。

3.授予权限

GRANT 权限 ON 数据库.表 TO '用户名'@'主机名';

常见的权限包括SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, ALL PRIVILEGES等。如果你想要授予所有权限,可以这样做:

GRANT ALL PRIVILEGES ON mydatabase.* TO 'myuser'@'%';

如果你想让用户能够创建和删除表,但不能修改现有数据,你可以这样授予权限:

GRANT CREATE, DROP ON mydatabase.* TO 'myuser'@'%';

 4.刷新权限

每当更改用户权限时,应该刷新权限以使更改生效:

FLUSH PRIVILEGES;

5.撤销权限

如果需要撤销某个用户的权限,可以使用REVOKE语句:

REVOKE 权限 ON 数据库.表 FROM '用户名'@'主机名';

例如,撤销myuser对mydatabase的所有权限:

REVOKE ALL PRIVILEGES ON mydatabase.* FROM 'myuser'@'%';

6.删除用户

要删除用户,可以使用DROP USER语句:

DROP USER '用户名'@'主机名';

例如,删除myuser:

DROP USER 'myuser'@'%';

Linux系统中,有两个常用的mysql命令可以用来备份和导入数据库。 1. 使用mysql命令行工具登录到数据库并导入一个sql文件,可以使用以下命令mysql -u <用户名> -p <密码> <数据库名> < <文件名.sql> 例如: mysql -uroot -p123456 dbname < file.sql 这个命令将会导入file.sql文件中的SQL语句到数据库中的dbname库中。 2. 使用mysqldump命令备份数据库到一个sql文件,可以使用以下命令mysqldump -u <用户名> -p <密码> -A > <文件名.sql> 例如: mysqldump -uroot -p123456 -A > backup.sql 这个命令将会备份所有的数据库到backup.sql文件中。 另外,还有一些常用的mysqldump命令参数: - -d: 只导出表结构,不包含数据。 - -t: 只导出表数据,不包含创建表的SQL语句。 - -q: 快速导出,不缓存查询。 - -x: 导出为XML格式文件。 综上所述,以上是Linux系统中常用的mysql命令。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [LinuxMySQL常用命令](https://blog.csdn.net/qq_38093301/article/details/103524266)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值