码迷,mamicode.com
首页 > 数据库 > 详细

MySQL学习笔记01_数据库基础知识

时间:2016-10-31 14:01:23      阅读:292      评论:0      收藏:0      [点我收藏+]

标签:term   brk   mkt   pow   不显示   monk   ssrs   bdd   mina   

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_数据库基础知识

标签:term   brk   mkt   pow   不显示   monk   ssrs   bdd   mina   

原文地址:http://www.cnblogs.com/homewch/p/6015151.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!