Mysql
Posted 我的博客
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql相关的知识,希望对你有一定的参考价值。
一、数据库
数据库服务器(本质就是一台计算机,该计算机之上安装有数据库管理软件的服务端)
数据库管理系统RDBMS(本质就是一个C/S架构的套接字软件)
库(文件夹)
表(文件)
记录(记录一个事物所有典型的特征/数据)
数据库管理系统分类:
关系型:有表结构,存取数据前必先定义表结构,存数据必须按照字段的类型或约束来
非关系型:存取数据都是采用key:value的形式
二、Mysql
mysql其实是采用线程池的socket的服务端
1、基本管理
启动:
启动服务端命令:mysqld
启动客户端:mysql -uroot -p -h 127.0.0.1 -P 3306 本机登录mysql服务端可简写为:mysql -uroot -p
把mysql软件做成系统服务:
1)、制作之前先把mysql关掉
2)、制作命令:mysql --install
3)、运行——services.msc查看
修改管理员密码命令:
mysqladmin -uroot -p原密码 password ‘新密码‘
破解管理员密码:
1)、先关闭mysql服务端
2)、以跳过授权表的方式在命令行中启动mysql服务端,命令:mysqld --skip-grant-tables;
3)、客户端直接以无密码的方式登录root用户,命令:mysql -uroot -p
4)、再起一个客户端,设置新的密码:update mysql.user set password=password(‘新密码‘) where user=‘root‘ and host=‘localhost‘;
5)、刷新:flush privileges;
6)、再命令行中用taskkill杀死mysqld服务,命令:taskkill /F /PID...,然后正常启动mysqld
统一字符编码:
在根目录下新建一个my.ini文件,文件内容为:
[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
[client]
default-character-set=utf8
[mysql]
user="root"
password="管理员密码"
default-character-set=utf8
2、基本的SQL语句
1)、库(文件夹)
增:
create database 增加的库名 charset 字符编码;
改:
alter database 库名 charset 字符编码; (库改的只能是字符编码)
查:
查看所有库的库名:show databases;
单独查看某一个库的信息:show create database 库名;
删:
drop database 库名;
2)、表(文件)
首先切换文件夹:use 库名;
查看当前文件夹:select database();
增:
create table 增加的表名(
字段名1 类型[宽度 约束条件],
字段名2 类型[宽度 约束条件],
字段名3 类型[宽度 约束条件]
); 举例:create table t1(id int,name char);
改:
修改表名:
alter table 表名 rename 新表名;
修改字段:
alter table 表名 modify 字段名 数据类型[约束条件];
alter table 表名 change 旧字段名 新字段名 数据类型[约束条件];
增加字段:
alter table 表名 add 字段名 数据类型[约束条件];
alter table 表名 add 字段名 数据类型[约束条件] first; (把字段加到第一位)
alter table 表名 add 字段名 数据类型[约束条件] after 字段名; (把字段加到某一个字段的后面)
删除字段:
alter table 表名 drop 字段名;
复制表:
复制表结构 + 记录:
create table 复制的表名 select * from 被复制的表名;
只复制表结构:
create table 复制的表名 select * from 被复制的表名 where 假的条件;
查:
查看当前库下所有的表名:show tables;
查看表的详细信息:show create table 表名;
查看表结构:describe 表名; 简写为:desc 表名;
删:
删除表:
drop table 表名;
清空表:
truncate 表名;
3)、记录(文件的一行内容)
增:
insert into 表名(字段1,字段2,字段3) values (字段1的值,字段2的值,字段3的值);
改:
update 表名 set 字段的值 where 判断条件;
查:
select 字段 from 表名;
删:
delete from 表名 where 判断条件;
三、表操作
存储引擎:专门用来处理不同类型的文件
1、创建表的完整语法:
create table 增加的表名(
字段名1 类型[宽度 约束条件],
字段名2 类型[宽度 约束条件],
字段名3 类型[宽度 约束条件]
);
类型:类型是限制字段必须以什么样的数据类型传值
约束条件:约束条件是在类型之外添加一种额外的限制
注意:
1)、在同一张表中,字段名是不能相同的
2)、宽度和约束条件可选,字段名和类型是必须的
3)、最后一个字段后不能加逗号
2、mysql常用数据类型
以上是关于Mysql的主要内容,如果未能解决你的问题,请参考以下文章