MySQL学习笔记01_数据库基础知识
01_1 mysql数据库启动与停止
- 以<管理员权限>启动cmd;
- 输入net stop mysql停止mysql服务;
- 输入net start mysql启动mysql服务;
- 输入mysql -u root –p回车,然后输入密码进入到mysql的操作系统,并具有root权限;
- 在命令提示符窗口使用services.msc查看mysql服务的状态.
01_2 数据库的简单介绍
按照数据库的发展时间顺序,主要出现了以下类型数据库系统:
- 网状型数据库
- 层次型数据库
- 关系型数据库
- 面向对象数据库
上面4中数据库系统中,关系型数据库使用最为广泛。面向对象数据库则是由面向对象语言催生的新型数据库,目前的一些数据库系统,如:SQL Server 2005、Oracle10g等都开始增加面向对象的特性。
01_3 SQL语句基础理论
SQL是操作和检索关系型数据库的标准语言,标准SQL语句可用于操作关系型数据库,划分为以下类型:
- DDL(Data Definition Language,数据定义语言)语句,操作数据对象的语言,有create、alter、drop;
- DML(Data Munipulation Language,数据操作语言)语句,这组DML语句修改后数据将保持较好的一致,有insert、update、delete;
- DQL(Data Query Language,数据查询语言)语句,主要用于查询数据,主要由select关键字完成,查询语句是SQL语句中最复杂,功能最丰富的语句;
- DCL(Data Control Language,数据控制语言)语句,主要有grant、revoke、commit、rollback、savepoint语句。
01_4 常见数据库对象及数据类型
(1)常见数据库对象
|
对象名称 |
对应关键字 |
描述 |
|---|---|---|
|
表 |
table |
表是数据库存储的逻辑单元,以行和列的形式存在;列是字段,行就是一条数据记录 |
|
数据字典 |
就是系统表,存储数据库相关信息的表,系统表里的数据通常有数据库系统维护。系统表结构和数据,开发人员不应该手动修改,只能查询其中的数据 |
|
|
视图 |
view |
一个或多个数据表里的数据的逻辑显示,视图就是一张虚拟的表,并不真正存储数据 |
|
约束 |
constraint |
执行数据检验规则,用于保证数据完整性的规则 |
|
索引 |
index |
用于提高查询性能,相当于书的目录 |
|
函数 |
function |
用于完成一个特定的计算,具有返回值和参数 |
|
存储过程 |
procedure |
完成某项完整的业务处理,没有返回值,但可通过传出参数将多个值传个调用环境 |
|
触发器 |
trigger |
相当于一个事件的监听器,当数据库发生特定的事件后,触发器被触发,完成响应处理 |
(2)常用数据类型
|
列类型 |
说明 |
|---|---|
|
tinyint/smallint/mediumint int(integer)/bigint |
1字节、2字节、3字节、4字节、8字节整数,又可分有符号和无符号两种。这些整数类型的区别仅仅表现范围不同 |
|
float/double |
单精度、双精度浮点类型 |
|
decimal(dec) |
精确小数类型,相当于float和double不会产生精度丢失问题 |
|
date |
日期类型,不能保存时间。当Java里的Date对象保存到该类型中,时间部分丢失 |
|
time |
时间类型,不能保存日期。当Java的Date对象的保存在该类型中,日期部分丢失 |
|
datetime |
日期、时间类型 |
|
timestamp |
时间戳类型 |
|
year |
年类型,仅保存年份 |
|
char |
定长字符串类型 |
|
varchar |
可变长度字符串类型 |
|
binary |
定长二进制字符串类型,它以二进制形式保存字符串 |
|
varbinary |
可变长度的二进制字符串类型,二进制形式保存字符串 |
|
tingblob/blob mediumblob/longblob |
1字节、2字节、3字节、4字节的二进制大对象,可存存储超图片、音乐等二进制数据,分别可存储:255/64K/16M/4G的大小 |
|
tingtext/text mediumtext/longtext |
1字节、2字节、3字节、4字节的文本对象,可存储超长长度的字符串,分别可存储:255/64K/16M/4G的大小的文本 |
|
enum(‘val1’, ‘val2’, …) |
枚举类型,该列的值只能是enum括号中出现的值的之一 |
|
set(‘value1’, ‘value2’, …) |
集合类型,该列的值可以是set中的一个或多个值 |
01_5 登录mysql数据库
(1)DOS命令:
mysql –h hostname –P Port –u username -p
一般在本机测试时:
mysql –h localhost –P 3306 –u root –p mysql –u root -p
然后系统会提示输入密码。
(2)图形化界面SQLyog
01_6 mysql相关命令
List of all MySQL commands:
Note that all text commands must be first on line and end with ';' ? (\?) Synonym for `help'. clear (\c) Clear the current input statement.明确当前输入语句 connect (\r) 连接到服务器,可选参数为数据库和主机 delimiter (\d) Set statement delimiter.设置语句分隔符 ego (\G) Send command to mysql server, display result vertically.发送命令到mysql服务器并显示结果 exit (\q) Exit mysql. Same as quit.退出mysql go (\g) Send command to mysql server. 发送命令到mysql服务器 help (\h) Display this help.显示帮助信息 notee (\t) Don't write into outfile.不写输出文件 print (\p) Print current command.打印当前命令 prompt (\R) Change your mysql prompt.改变mysql的提示信息 quit (\q) Quit mysql.退出mysql rehash (\#) Rebuild completion hash.重建完成散列 source (\.) 执行一个SQL脚本文件,以一个文件名作为参数 status (\s) Get status information from the server.从服务器获取mysql的状态信息 tee (\T) 设置输出文件[to_outfile],并将信息添加到所有给定的输出文件 use (\u) 使用另一个数据库,数据库名称作为参数 charset (\C) 切换到另一个字符集 warnings (\W) Show warnings after every statement.每一个语句之后显示警告 nowarning (\w) Don't show warnings after every statement.每一个语句之后不显示警告
01_7 重新配置mysql
(1)通过DOS命令重新配置
修改字符集编码:set character_set_client=utf8; set character_set_client=gbk;
(2)修改ini配置文件
注意:修改后需要重启mysql服务,修改才能生效。
01_8 解决mysql初始化时如何设置密码的问题
问题截图:
解决方案:
(1)首先以管理员方式启动cmd控制台
停止mysql服务
>net stop mysql
(2)跳过mysql的权限检查,因为mysql一开始的时候没有设置用户名和密码,默认以root用户登录会自动生成随机密码,需要跳过这一步
在初始化配置中my.ini的[mysqld]字段加入:skip-grant-tables
(3)重启mysql服务,这时的mysql不需要密码即可登录数据库
Cmd进入mysql数据库
mysql>use mysql;
mysql>update user set password=password('q335836929') WHERE User='root';
mysql>flush privileges;
(4) 运行之后最后去掉my.ini中的skip-grant-tables,重启mysqld即可
也可这样做:
→先跳转到mysql的bin目录下,再输入mysqld --skip-grant-tables。这时候有可能一直没有反应的样子,不会生成新的一行输入。
实际上它已经停止了权限检查,我们可以进行其他操作了。
→重新打开一个cmd命令提示符窗口,进入到mysql里面,然后输入use mysql,就会发现成功了
上面最后一行提示的是Database changed!!
如果你输入show tables就会看到这个数据库下有个表叫user,记录了登陆的账户名和密码。
所以你可以这样修改root账户的密码:
UPDATE user SET Password=PASSWORD('q335836929') WHERE user='root';
这时你使用MySql Command Line Client登陆的话,就会要求输入密码123了!你已经不是匿名登陆,所以可以进行各种操作了!!!
本文链接:http://www.cnblogs.com/homewch/p/6015151.html
MySQL学习笔记01_数据库基础知识的更多相关文章
- MySQL学习笔记(一)—数据库基础
一.数据库概述 1.数据库的组织结构 (1)数据库就是用来存放信息的仓库. (2)数据库里的数据集合都存放在数据表(table)里. (3)数据表由数据行(row)和数据 ...
- ios开发学习笔记001-C语言基础知识
先来学习一下C语言基础知识,总结如下: 在xcode下编写代码. 1.编写代码 2.编译:cc –c 文件名.c 编译成功会生成一个 .o的目标文件 3.链接:把目标文件.o和系统自带的库合并在一起, ...
- mysql学习之路_基础知识
Mysql php阶段将数据库分为三个阶 基础阶段: mysql数据库的基本操作(增删改查),以及一些高级操作(视图,触发器,函数,存储过程等),PHP操作没有sql数 ...
- FreeRTOS学习笔记——FreeRTOS 任务基础知识
RTOS 系统的核心就是任务管理,FreeRTOS 也不例外,而且大多数学习RTOS 系统的工程师或者学生主要就是为了使用RTOS 的多任务处理功能,初步上手RTOS 系统首先必须掌握的也是任务的创建 ...
- SQL学习笔记之 数据库基础(一)
数据库基础 数据库系统的组成:由数据库,数据库管理软件,数据库管理员DBA,支持数据库系统的硬件和软件组成,其中数据库管理员是对数据库进行规划.设计.维护.和监视的专业管理人员,在数据库系统中起着非常 ...
- MySQL学习笔记02_数据库和表的基本操作
02_1 操作数据库 (1)创建数据库 CREATE DATABASE [IF NOT EXISTS] db_name [create_specification[, create_specifica ...
- 《Python基础教程(第二版)》学习笔记 -> 第一章 基础知识
写笔记的原因:书也看了一遍,视频也看了,但总是感觉效果不好,一段时间忘记了,再看又觉得有心无力,都是PDF的书籍,打开了就没有心情了,上班一天了,回家看这些东西,真的没多大精力了,所以,我觉得还是把p ...
- MySQL学习笔记_8_SQL语言基础复习
SQL语言基础复习 一.概述 SQL语句注释方式 1)以"#"开头直到行尾的所有内容都是注释 2)以"--"(--后还有一个空格)开头直到行尾的所有内容都是注释 ...
- 【 学习笔记 】memcached基础知识
源地址:http://kb.cnblogs.com/page/42731/ 仔细学习了下,以下是记录的笔记备忘内容. 一.memcached是什么? memcached是高性能的分布式内存缓存服 ...
随机推荐
- 第3月第16天 fd_set 32 ACE_TP_Reactor
1. #ifdef FD_SETSIZE #define __DARWIN_FD_SETSIZE FD_SETSIZE #else /* !FD_SETSIZE */ #define __DARWIN ...
- 关于Access restriction: The type 'Application' is not API (restriction on required library)
原文链接:http://rxxluowei.iteye.com/blog/671893 今天写第一次写JavaFX的入门程序就GG 遇到了导入API的问题,无奈疯狂地通过网络找解决方案.. 我的问题是 ...
- 汤姆大叔 javascript 系列 第20课 最后的5到javascript题目
博客链接:http://www.cnblogs.com/TomXu/archive/2012/02/10/2342098.html 原题: 大叔注:这些题目也是来自出这5个题目的人,当然如果你能答对4 ...
- BZOJ2802——[Poi2012]Warehouse Store
1.题目巨短,自己看看吧 2.分析:这道题,想了半天dp还是想不到,最后看题解发现是个贪心的思想,我们维护一个堆,如果这个人不能加入就把他和堆上最大的进行比较,然后搞搞就行了 #include < ...
- http状态代码-转载
一些常见的状态码为: 200 – 服务器成功返回网页 404 – 请求的网页不存在 503 – 服务不可用 1xx(临时响应) 表示临时响应并需要请求者继续执行操作的状态代码. 代码 说明 100 ( ...
- hdu1045 DFS
#include<stdio.h> #include<string.h> int n; int maxx; ][]; ]={,-,,}; ]={,,,-}; ][][];//炮 ...
- MySQL 专用备份软件参考
1.MySQL Backup Tool 免费(需要安装 .NET 3.5) https://sourceforge.net/projects/mysqlbutool/?source=typ_re ...
- 还敢说你是程序员?一律师闲着没事写了个app,用户量600万
今天周五,是我在上海上班的第五天. 这几天怎么说呢,跟混日子差不多,因为处处有“”惊喜”. 上班第一天领来办公电脑,登上自己的公司邮箱,惊喜来了!我的擦擦擦,全TM是英文呐!作为一个从村儿里来的码农, ...
- Xcode静态检查分析代码
Clang静态分析和Instruments来剖析代码有一些不同,Clang更致力于在编译的过程中通过自身的一套判断机制来找出代码中潜在的隐患. 在XCode 3.2之后的版本里,Clang已经被集 ...
- php7 安装redis扩展
从pecl下载的phpredis扩展在make时报错,google了一下,解决办法,因为phpredis 有专门为php7的分支,所以先git clone phpredis下来 git clone h ...