数据库
数据库(Database,DB)
是按照数据结构来组织、存储和管理数据的仓库,其本身可看作电子化的文件柜,用户可以对文件中的数据进行增加、删除、修改、查找等操作。
数据库存储结构
数据库是存储和管理数据的仓库,但数据库并不能直接存储数据,数据是存储在表中的,在存储数据的过程中一定会用到数据库服务器,所谓的数据库服务器就是指在计算机上安装一个数据库管理程序。
数据库管理系统(DBMS)
常见的数据库产品:
关系型数据库:MySQL、Oracle、MSSLQ、Access、Excel、DB2(IBM);SQLite(嵌入式的轻型的数据库)
非关系型数据库(NO-SQL):mongoDB、Hbase,Cassandra
关系型数据库语言由4部分组成,具体如下:
- (1)数据定义语言(DDL) 数据库
- (2)数据操作语言(DML) 表操作
- (3)数据查询语言(DQL) 表查询
- (4)数据控制语言(DCL) 事物、存储过程等
数据库的安装与配置
平台下安装和配置MySQL:
安装:
配置:
MySQL配置中一些难理解的点:
my.ini(配置文件)
MySQL正常的安装,my.ini会存放在Windows
[client]
port-3306 //客户端端口
[mysql]
default-character-set-gbk //默认的字符集(字符编码)
[mysqld]
port-3306 //mysql服务器的监听端口
basedir="E:/phoStuy/MySQL/"
datadir="E:/phoStuy/MySQL/data"
character-set-server-gbk
default-storage-endine-MyISAM //数据库存储引擎
MYISAM INNODB(区别)
sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
max_connections=512 //最大连接数
query_cache_size=0
table_cache=256
tmp_table_size=18M
thread_cache_size=8
myisam_max_sort_file_size=64G
myisam_sort_buffer_size=35M
key_buffer_size=25M
read_buffer_size=64k
read_rnd_buffer_size=256k
sort_buffer_size=256k
Linux平台下安装MySQL
基于Linux平台的MySql安装文件有三个版本,具体介绍如下:
1、RPM软件包
2、Generic Binariesr软件包
3、源码包
RPM软件包:
RPM软件包是一种Linux平台下的安装文件,通过相关命令可以很方便的安装与卸载。该软件包分为两个:服务器端和客户端,需要分别下载和安装。在安装时首先需要安装服务器端,然后再安装客户端。
Generic Binariesr软件包
Generic Binariesr软件包是一个二进制软件包,经过编译生成二进制文件的软件包。
源码包
源码包是MySQL数据库的源代码,用户需要自己编译生成二进制文件后才能安装。
MySQL官方推荐在Linux平台下使用RPM软件包安装MySQL,接下来就演示一下如何使用RPM软件包来安装MySQL:
下载RPM安装包
首先官网http://dev.mysql.com/downloads/mysql/5.5.html#downloads,下载RPM安装包,RPM安装包分为
MySQL服务端和客户端。本事例以下列版本演示。
MySQL-server-5.5.31-2.el6.i686.rpm
MySQL-client-5.5.31-2.el6.i686.rpm
检查是否安装过MySQL
在安装之前,首先要检查当前系统是否已经安装了MySQL,否则在安装时可能产生冲突。具体的查看命令如下所示:
rpm -qa | grep mysql
执行完上述命令后,如果出现MySQL的相关信息,例如mysql-libs-5.1.66-2.el6_3.i686就说明当前系统已经安装了MySQL,此时,如果希望卸载该版本的MySQL,可以使用以下命令:
rpm -e mysql-libs-5.1.66-2.el6_3.i686 --nodeps
安装MySQL 服务端和客户端
接下来将MySQL安装包放在Linux系统的Downloads目录下,然后进入Downloads目录,在该目录中安装MySQL服务端,具体命令如下:
rpm -ivh MySQL-server-5.5.31-2.el6.i686.rpm
MySQL的服务端安装成功后,接下来还需安装MySQL的客户端。在安装客户端时需要输入如下命令:4
rpm -ivh MySQL-client-5.5.31-2.el6.i686.rpm
启动MySQL服务
MySQL 安装完成后,要想使用MySQL服务端,还需要启动MySQL服务,具体命令如下:
service mysql start
上述命令用于开启mysql服务,值得一提的是,MySQL的服务命令实际上有4个参数,这四个参数分别代表不同的意义,具体如下:
1、start:启动服务
2、stop:停止服务
3、restart :重启服务
4、status:查看服务状态
操作MySQL
(1)设置MySQL登录密码
mysql_secure_installation
(2)登录MySQL
mysql -uroot -pitcast
启动MySQL服务
1、通过Windows服务管理器启动MySQL服务:
通过Windows的服务管理器可以查看MySQL服务是否开启,首先点击【开始】菜单,在弹出的菜单中选择【运行】命令,打开【运行】对话框输入“services.msc”命令,单击【确定】按钮,此时就会打开Windows的服务管理器。
2、通过DOS命令启动MySQL服务
启动MySQL服务不仅可以通过Windows服务管理器启动,还可以通过DOS命令来启动,命令如下:
net start mysql
DOS命令行不仅可以启动MySQL服务,还可以停止MySQL服务
net stop mysql
登陆MySQL数据库
1、使用相关命令登录
登录MySQL数据库可以通过DOS命令完成,具体命令如下:
mysql> –h localhost –u username –p
在上述命令中,mysql为登录命令,-h后面的参数是服务器的主机地址,-u后面的参数是登录数据库的用户名,-p后面是登录密码
MySQL的相关命令:
修改MySQL密码:
- 方法1、用SET PASSWORD命令
- 首先登陆MySQL。
- 格式:mysql>set password for 用户名@localhost = password(’新密码’);
- 例子:mysql>set password for root@localhost = password (‘123’);
- 方法2、用mysqladmin
- 格式:mysqladmin -u用户名 -p旧密码 password 新密码
- 例子:mysqladmin -uroot -p123456 password 123
- 方法3、用UPDATE直接编辑user表
- 首先登录MySQL。
- mysql> user mysql;
- mysql> update user set password=password(‘123’) where user = ‘root’ and
- host=’localhost’;
- mysql> flush privileges;
- 方法4、在忘记root密码的时候(Windows为例)
- 1、关闭正在运行的MySQL服务。
- 2、打开DOS窗口,转到mysql\bin目录。
- 3、输入mysql –skip-greant-tables 回车。 –skip-grant-tables的意思是启动MySQL服务的时候跳权限表认证。
- 4、在开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),转到mysql\bin目录。
- 5、输入mysql回车,如果成功,将出现MySQL提示符 >。
- 6、连接权限数据库:use mysql;。
- 7、改密码:update user set password=password(“123”) where user=”root”;
- 8、刷新权限(必须):flush privileges;
- 9、退出quie
- 10、注销系统,在进入,使用用户名root和刚才设置的新密码123登录。
查看和创建数据库
1、创建数据库的基本语法格式如下所示:
create database 数据库名称:
例如:mysq> create databases bjsxt;
2、查看某个已经创建的数据库信息:
show create database 数据库名称:
3、修改数据库
修改数据库编码的基本语法格式如下所示:
ALTER DATABASE 数据库名称 DEFAULT CHATATER SET 编码方式 COLLATE 编码字符集_bin
例如:
ARTER DATABASE bjsxt DEFAULT CHATACTER SET utf8 COLLATE utf8_general_ci;
4、删除数据库的基本语法格式如下所示:
DROP DATABASE 数据库名称;
数据类型
1、整数类型
根据数值取值范围的不同,MySQL中的整数类型可分为5种,分别是TINYINT、SMALLINT、MEDIUMINT、INT和BIGINT
2、浮点数类型
在MySQL数据库中,存储的小数都是使用浮点数和定点数来表示的。
浮点数的类型有两种,分别是单精度浮点数类型(FLOAT)和双精度浮点类型(DOUBLE)。而定点数类型只有DECIMAL类型。
3、日期与时间类型
为了方便在数据库中存储日期和时间,MySQL提供了表示日期和时间的数据类型,分别是YEAR、DATE、TIME、DATETIME和TIMESTAMP
4、字符串和二进制类型
为了存储字符串、图片和声音等数据,MySQL提供了字符串和二进制类型
数据表的基本操作(CRUD)
1、创建数据表格式:
create table 数据表名称
(
字段名1 数据类型,
字段名2 数据类型,
字段名n 数据类型
);
2、使用SHOW CREATE TABLE 表名称;
参数"\G",是显示结果整齐美观
show create table tb_grade \G;
show tables; #查看当前数据库的所有表名称
DESCRIBE 表名; 或者是: desc 表名称;
3、删除数据表
DROP TABLE 表名;
4、修改数据表:
4.1 修改表名称
alter table grade rename to tb_name;
4.2 添加字段名称(数据无损)
alter table tb_name add name chat(20);
4.3 修改字段名称(数据无损)
alter table tb_name change name username varchar(20);
4.4 修改字段属性(数据类型) (数据有问题)
alter table tb_name modify age int(11);
4.5 修改字段排列位置(数据无损)
alter table tb_name modify age int(11) first;
alter table tb_name modify id int(11) after grade;
4.6 删除字段名称(数据有损)
alter table tb_name drop age;
注意:备份数据后再进行操作