RDBMS 关系型数据库管理系统 : 它是一个软件,
有两种视图:逻辑视图:从逻辑的角度来看数据库由什么组成,由表空间,表,视图(存储SELECT语句,),用户(是用于定义是否能获取资源权限,是权限的集合),触发器,存储过程,存储函数(合起来被称为存储例程),事件,索引(从oracle角度讲这些被称为数据库对象)
物理视图:通常由文件组成
一表一文件
多表一文件(表空间)
使用裸设备(存储文件)oracle,mysql
MySQL
Tcx-> Unireg,没有SQL interface
1996年开始面市
特征:1.Speed 速度 ,完全多线程,查询缓存(缓存的是结果),
2. Reliability 可靠性
3.Scalability 伸缩性
4.Ease of use 非常易用
5.可移植性比较好,能够完全兼容标准 Protability and Standards Compliance
6. Multiuser Support 支持多用户
7. 国际化比较强,Internationalization
8.广泛的应用程序支持能力 Wide Application Support
C C++ Java Perl PHP Python Ruby JDBC ODBC NET
9.Open Source 开源
两个版本:MySQL Community
MySQL Enterprise
软件版本
product family
MySQL Server
MySQL Cluster(集群)
MySQL Proxy (代理)
MySQL Adminitrator(图形化管理工具)
MySQL Query Browser
MySQL Workbench
MySQL Migration Toolkit
MySQL Embedded Server
MySQL Drivers and Connectors
MySQL的组成; Connectivity连接/线程处理 查询缓存 分析器 优化器 存储引擎
mysqld的配置文件在/etc/my.cnf
On Unix-based的系统上查找配置文件的顺序
/etc/my.cnf
/etc/mysql/my.cnf
$MYSQL_HOME/my.cnf
/path/to/file when defaults-extra-file=/path/to/file is specified
~/.my.cnf (登录到系统的当前用户)
路径是以最后找到的路径为准
编译安装mysql
二进制格式,解压缩之后简单配置就可以使用
1.编译安装
lftp 192.168.0.254
cd pub/Sources/mysql-5.5
get mysql-5.5.15-linux2.6-i686.tar.gz
tar xf mysql-5.5.15-linux2.6-i686.tar.gz -C /usr/local
ln -sv mysql-5.5.15-linux2.6-i686.tar.gz mysql
cd /usr/local
groupadd mysql 创建系统组
useradd -g mysql -s /bin/nologin -M mysql
cd mysql
chown -R mysql:mysql .
scripts/mysql_install_db --help
数据文件如果不指定数据目录,就会存放在当前目录的data中,数据库需要进行不停的备份,所以就要使用LVM的快照,所以要创建一个逻辑卷LVM
fdisk /dev/sda
添加一个大小为10G分区/dev/sda5,类型为8e
partprobe /dev/sda
pvcreate /dev/sda5
vgcreate myvg /dev/sda5
lvcreate -L 5G -n mydata myvg
mke2fs -j /dev/myvg/mydata
mkdir /mydata
开机挂载 vim /etc/fstab 添加
/dev/myvg/mydata /mydata etx3 defaults 0 0
保存退出
mount -a
不能把数据直接放在/mydata中,所以
mkdir /mydata/data
chown -R mysql:mysql /mydata/data
scripts/mysql_install_db --user=mysql --datadir=/mydata/data
初始化MYSQL数据库
[root@www mysql]#chown -R root .
接下来我们就可以使用/usr/local/mysql/bin/mysqld start启动mysql了,但是这样太复杂了,所以我们需要为mysql提供配置文件,
2. 为mysql提供配置文件
cd support-files/
cp my-large.cnf /etc/my.cnf mysql的配置文件
vim /etc/my.cnf 修改
[mysqld]
datadir = /mydata/data 修改数据目录的位置
保存退出
cp mysql.server /etc/init.d/mysqld
这样以后我们就可以使用service mysqld start 了
chkconfig --add mysqld
chkconfig --list mysqld
监听tcp的3306 端口
netstat -tnlp 监听端口
为了可以更方便的使用mysql命令,所以我们需要修改/etc/profile 的PATH参数
vim /etc/profile
PATH=$PATH:/usr/local/apache/bin:/usr/local/mysql/bin
保存退去
.!$ 重读这个文件
我们就可以使用mysql命令了
接下来我们就需要导出mysql的头文件,库文件,和man文件了
ln -sv /usr/local/mysql/include /usr/include/mysql
vim /etc/ld.so.conf.d/mysql.conf 库文件
/usr/local/mysql/lib
ldconfig -v 重载
vim /etc/man.config
MANPATN /usr/local/mysql/man
这样以后我们就编译好mysql了(*^◎^*)↖(^ω^)↗