一、登录数据库
(1) 简单模式
代码语言:javascript复制C:Usersxlg>mysql -uroot -p
Enter password: ******
(2) 标准模式
代码语言:javascript复制 C:Usersxlg>mysql -h127.0.0.1 -uroot -p
mysql -hlocalhost -uroot -p
mysql -h10.0.110.238 -uroot -p
Enter password: ******
参数所代表的含义:
h:host 主机(localhost IPV4 127.0.0.1)
注意:
root用户默认是不允许远程访问登录的 也就是IPV4的访问不了的
u:root 用户
p:password 密码
授权root用户可以通过外网IP进行访问
命令:(这个需要登录进去使用)
代码语言:javascript复制grant all privileges on *.* to 'root'@'%' identified by 'password' with grant option
二、对于MySQL数据库的操作
对于库和表操作的单词为:
创建 CREATE
删除 DROP
查看 SHOW
修改 ALTER
(1) 查看所有的数据库
代码语言:javascript复制show databases;
(2) 选择数据库
代码语言:javascript复制use 库名
(3) 查看当前库下有哪些表
代码语言:javascript复制show tables;
(4) 查看当前所在库
代码语言:javascript复制select database();
(5)创建数据库
代码语言:javascript复制create database 库名;
(6) 查看创建库信息
代码语言:javascript复制show create database 库名;
(7) 修改数据库字符编码
代码语言:javascript复制alter database 库名character set utf8;
(8)修改表的编码
代码语言:javascript复制alter table user character set utf8;
(9) 修改表中字段的字符编码
代码语言:javascript复制 alter table 表名modify 字段名 字段类型约束条件 character set utf8;
(10) 删除库/表
代码语言:javascript复制drop database 库名;
代码语言:javascript复制drop table 表名;
(11) 创建库并设置字符编码
代码语言:javascript复制create database lucky character set utf8;
(12) 创建库判断当前创建的库是否存在(防止创建库时报错)
代码语言:javascript复制create database if not exists lucky;
(13) 创建表判断当前创建的表是否存在(防止创建库时报错)
代码语言:javascript复制create table if not exists lucky(id int unsigned);
(14) 查看表结构
代码语言:javascript复制desc 表名;
(15) 查看创建表语句
代码语言:javascript复制show create table lucky;
(16) 以竖状查看 G
代码语言:javascript复制show create table luckyG
(17) 删除不存在的表防止报错
代码语言:javascript复制drop table if exists lucky;
(18) 删除不存在的库防止报错
代码语言:javascript复制drop databaseif exists lucky;
(19) 撤销当前命令
代码语言:javascript复制c
(20) 数据库的退出
- q exit quit
注意:
- MySQL命令以英文的分号作为结束
- SQL命令不区分大小写
- 在进入到一个数据库中在进入到另外一个的时候 不需要退出数据库 而是使用use再次进行数据库的切换
- 如果创建的MySQL库编码错误的 则表和字段都为库的编码 当将库编码改为utf8 则表和字段依然没有改变 那么需要继续修改表和字段 所以在创建的时候注意库的编码
- 更改默认创建库字符编码
- C:ProgramDataMySQLMySQL Server 5.7 64行 :default-character-set=utf8
- 更改不严谨报错
- sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
- windows下表名库名不区分大小写 Linux下严格区分
- MySQL数据库的名称具有唯一性 每个库中的表的名称也具有唯一性(库名或者一个库中的表名不要出现相同的名称)
- 当在输入命令的时候输入完以后 添加分号不能执行命令 那么查看一下左侧是否存在引号没有闭合的情况