命令行中管理 MySQL,可以使用
mysql
客户端工具连接数据库后执行 SQL
连接到MySQL服务器
- 基本连接:在命令行中输入
mysql -u 用户名 -p
,然后输入密码即可连接到本地默认端口的MySQL服务器,若用户名为root
,则命令为mysql -u root -p
,回车后输入密码。 - 指定主机和端口连接:如果MySQL服务器不在本地或使用了非默认端口,需要使用
mysql -u 用户名 -p -h 主机名 -P 端口号
命令,要连接到IP地址为168.1.100
、端口为3307
的服务器,用户名为admin
,则命令为mysql -u admin -p -h 192.168.1.100 -P 3307
。 - 直接进入特定数据库:若想登录后直接进入某个数据库,可使用
mysql -u 用户名 -p 数据库名
或mysql -u 用户名 -p -D 数据库名
,要直接连接到名为my_database
的数据库,用户名为user
,则命令为mysql -u user -p my_database
或mysql -u user -p -D my_database
。
启动与停止MySQL服务
- Windows系统:在命令提示符中,使用
net start mysql
命令可以启动MySQL服务,使用net stop mysql
命令可以停止MySQL服务。 - Linux系统:常见的是使用
service mysql start
启动服务,使用service mysql stop
停止服务,也可以使用systemctl start mysql
和systemctl stop mysql
命令来启动和停止服务。
基本数据库操作
- 显示数据库:登录到MySQL命令行后,输入
show databases;
命令可以显示所有数据库的列表。 - 创建数据库:使用
create database 数据库名;
命令创建新的数据库,要创建一个名为new_database
的数据库,命令为create database new_database;
。 - 删除数据库:执行
drop database 数据库名;
命令可以删除指定的数据库,删除名为old_database
的数据库,命令为drop database old_database;
。 - 切换当前数据库:通过
use 数据库名;
命令可以切换到指定的数据库,后续的操作将在这个数据库中进行,要切换到my_database
数据库,命令为use my_database;
。
数据表操作
- 显示数据表:在选中的数据库中,使用
show tables;
命令可以显示当前数据库中的所有数据表。 - 查看表结构:输入
describe 表名;
或show create table 表名;
命令可以查看指定数据表的结构信息,包括字段名、数据类型、约束等。 - 创建表:使用
create table 表名 (字段定义);
命令创建新的数据表,创建一个名为users
的表,包含id
、username
和password
字段,命令可能为create table users (id int auto_increment primary key, username varchar(50) not null, password varchar(50) not null);
。 - 删除表:执行
drop table 表名;
命令可以删除指定的数据表。 - 清空表记录:使用
truncate table 表名;
命令可以快速清空表中的所有记录,但保留表结构。
数据查询与操作
- 查询数据:使用
select
语句进行数据查询,查询users
表中的所有记录,命令为select * from users;
,可以根据需要添加条件、排序等子句,如select * from users where username = 'admin';
查询用户名为admin
的记录。 - 插入数据:使用
insert into
语句插入新数据,向users
表中插入一条新记录,命令为insert into users (username, password) values ('new_user', 'password123');
。 - 更新数据:使用
update
语句更新表中的数据,将users
表中用户名为new_user
的密码修改为new_password
,命令为update users set password = 'new_password' where username = 'new_user';
。 - 删除数据:使用
delete from
语句删除表中的数据,删除users
表中用户名为old_user
的记录,命令为delete from users where username = 'old_user';
。
用户管理
- 创建用户:使用
create user '用户名'@'主机名' identified by '密码';
命令创建新用户,创建一个名为new_user
、密码为new_password
、可以从任何主机登录的用户,命令为create user 'new_user'@'%' identified by 'new_password';
。 - 授权用户:通过
grant
语句为用户授予权限,授予new_user
用户对my_database
数据库的所有权限,命令为grant all privileges on my_database.* to 'new_user'@'%';
。 - 撤销用户权限:使用
revoke
语句撤销用户的权限,撤销new_user
用户对my_database
数据库的插入权限,命令为revoke insert on my_database.* from 'new_user'@'%';
。 - 删除用户:执行
drop user '用户名'@'主机名';
命令可以删除用户,删除new_user
用户,命令为drop user 'new_user'@'%';
。
数据导入与导出
- 导出数据:使用
mysqldump
工具可以将数据库或数据表导出为SQL文件,将my_database
数据库导出为backup.sql
文件,命令为mysqldump -u 用户名 -p my_database > backup.sql
。 - 导入数据:使用
mysql
命令可以将SQL文件中的数据导入到数据库中,将backup.sql
文件中的数据导入到my_database
数据库,命令为mysql -u 用户名 -p my_database < backup.sql
。
常见问题与解答
- 问题:如何在命令行中查看MySQL的版本信息?
解答:在MySQL命令行客户端中,输入select version();
命令可以查看MySQL的版本信息。 - 问题:忘记了MySQL用户的密码怎么办?
解答:可以通过以下步骤重置密码(以Windows系统为例):停止MySQL服务;使用mysqld --skip-grant-tables
命令启动MySQL服务;打开一个新的命令行窗口,连接到MySQL服务器(不需要输入密码);使用flush privileges;
命令刷新权限,并使用set password for '用户名'@'主机名' = password('新密码');
命令设置新密码。
以上就是关于“命令行里怎么管理mysql”的问题,朋友们可以点击主页了解更多内容,希望可以够帮助大家!
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/11280.html