命令行中管理 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