MySQL的一些常用基本命令的使用说明

这里整理一下MySQL的一些常用命令的使用方法。

连接到服务器

要使用数据库要先连接到MySQL,在Windows中可以在DOS窗口中进入 MySQLin 目录,当然设置环境变量也可以直接在任何目录中进行,输入 mysql -u root -p 然后就会提示你输入密码。
当然在这之前你要确定自己MySQL已经启动了,用 net start mysql 命令启动mysql服务,用 net stop mysql 命令停止mysql服务(当然命令需要管理员权限)。

如果是在Linux可以使用 systemctl start mysql 启动mysql服务,systemctl status mysql mysql 状态信息,systemctl restart mysql 重新启动mysql服务,systemctl stop mysql停止mysql服务。

当然在Windows中也可以直接打开MySQL的程序,会直接让你输入密码。
如果在你安装后没有对root用户进行设置是没有密码的,直接回车就进去了。

这里还要给出一些和mysql一起使用的命令行参数

MySQL命令行参数

参数 描述
-A 禁止自动重新生成哈希表
-b 禁用出错的beep声
-B 不使用历史文件
-C 压缩客户端和服务器之间发送的所有信息
-D 制定要用的数据库
-e 制定执行语句并退出
-E 竖直方向显示查询输出,每一行一个字段
-f 如果有SQL错误继续执行
-G 使能命名命令的使用
-h 指定MySQL服务器主机名(默认localhost)
-H 用HTML代码显示查询结果
-i 忽略函数名后的空格
-N 结果中不显示列名称
-o 忽略语句,除了在命令行上命名的默认数据库的语句
-p 为用户帐户提示输入命令
-P 指定网络连接用的TCP端口号
-q 不缓存每条查询结果
-r 显示列输出,不转义
-s 使用安静模式
-S 为本地(localhost)连接指定一个套接字
-t 以表的形式显示输出
-T 在程序退出时显示调试信息、内存以及CPU统计信息
-u 指定登录用户名
-U 只允许指定了键值的UPDATE和DELETE语句
-v 使用详细模式
-w 如果连接没有完成,等待并重试
-X 用XHTML代码显示查询输出

连接到远程主机上的MYSQL。假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123。则键入以下命令:
    mysql -h 110.110.110.110 -u root -p 123;(注:u与root之间可以不用加空格,其它也一样)
在你输入用户对应的密码,就登录上了服务器,接下来就可以输入命令了。

MySQL命令

除了标准SQL命令,还有一些mysql特殊的命令在下面先列出。

MySQL命令

命令 简单指令 描述
? ? 帮助信息
clear c 清空命令
connect 连接到数据库和服务器
delimiter d 设置SQL语句分隔符
edit e 用命令行编辑器编辑命令
ego G 将命令发送到MySQL服务器并垂直显示结果
exit q 退出mysql程序
go g 将命令发送到MySQL服务器
help h 显示帮助信息
nopager 禁用输出分页将输出发送到STDOUT
note 不要将输出发送到输出文件
pager P 将分页命令设为指定的程序(默认是more)
print p 打印当前命令
prompt R 修改mysql命令提示符
quit q 退出mysql程序(同exit)
rehash # 重新构建命令补全哈希表
source . 执行指定文件中的SQL脚本
status s 从MySQL服务器提取状态信息
system ! 在系统上执行shell命令
tee T 将所有输出附加到指定文件中
use u 使用另一个数据库
charset C 切换到另一个数据库
warnings W 在每条语句之后显示警告信息
nowrning w 不要在每条语句之后显示警告信息

修改密码

格式:mysqladmin -u 用户名 -p 旧密码 password 新密码

1、给root加个密码123。
首先在DOS下进入目录mysqlin,然后键入以下命令
mysqladmin -u root -password 123

注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。

2、再将root的密码改为123345。
mysqladmin -u root -p 123 password 12345

跳过登录验证

在Windows系统中在my.ini文件的末尾添加 skip_grant_tables,文件就在你安装MySQL的目录下,你可以在你安装MySQL的目录下使用命令notepad my.ini弹出记事本,在末尾添加一行。

在Linux系统中你可以使用命令 vi /etc/my.cnf ,在文件末尾添加 skip-grant-tables

最后都重启服务,对密码进行修改,修改密码后,不要忘记再将配置文件中新添加的最后一行删除。

添加新用户

格式:grant select on 数据库.* to 用户名@登录主机 identified by “密码”

1、增加一个用户staff1密码为123,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用root用户连入MYSQL,然后键入以下命令:
grant select,insert,update,delete on *.* to [email=staff1@”%]staff1@”%[/email]” identified by “123";

但增加的用户是十分危险的,你想如某个人知道test1的密码,那么他就可以在internet上的任何一台电脑上登录你的mysql数据库并对你的数据可以为所欲为了。

2、增加一个用户staff2密码为123,让他只可以在localhost上登录,并可以对数据库data进行查询、插入、修改、删除的操作(localhost指本地主机,即MYSQL数据库所在的那台主机),这样用户即使用知道staff2的密码,他也无法从internet上直接访问数据库,只能通过MYSQL主机上的web页来访问了。
grant select,insert,update,delete on data.* to [email=staff2@localhost]staff2@localhost[/email] identified by “123”;

创建数据库

命令:create database 数据路名;

例1:创建一个叫data的数据库
mysql> create database data;

例2:创建数据库并分配用户
①create database 数据库名;
②grant select,insert,update,delete,create,drop,alter on 数据库名.* to 数据库名@localhost identified by '密码';
③set password for '数据库名'@'localhost' = old_password('密码');
依次执行3个命令完成数据库创建。注意:中文 “密码”和“数据库”是户自己需要设置的。

显示数据库

命令:show databases
mysql> show databases;

注意:为了不再显示的时候乱码,要修改数据库默认编码。以下以GBK编码页面为例进行说明:

1、修改MYSQL的配置文件:my.ini里面修改default-character-set=gbk

2、代码运行时修改:
①Java代码:jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=gbk
②PHP代码:header("Content-Type:text/html;charset=gb2312");
③C语言代码:int mysql_set_character_set( MYSQL * mysql, char * csname);
该函数用于为当前连接设置默认的字符集。字符串csname指定了1个有效的字符集名称。连接校对成为字符集的默认校对。该函数的工作方式与SET NAMES语句类似,但它还能设置mysql- > charset的值,从而影响了由mysql_real_escape_string() 设置的字符集。

删除数据库

命令:drop database 数据库名
例如:删除名为data的数据库
mysql> drop database data;

例子1:删除一个已经确定存在的数据库
mysql> drop database data;
Query OK, 0 rows affected (0.61 sec)

例子2:删除一个不确定存在的数据库
mysql> drop database data;
ERROR 1008 (HY000): Can't drop database 'data'; database doesn't exist
//不能够删除数据库'data';数据库不存在

mysql> drop database if exists drop_database;
Query OK, 0 rows affected (0.00 sec)
//if exists 判断数据库是否存在,不存在也不产生错误

连接数据库

未完待续...

原文地址:https://www.cnblogs.com/foreverW/p/7724949.html