Mysql简介
Mysql是一个真正的多用户、多线程SQL数据库服务器。SQL(结构化查询语言)是世界上最流行的和标准化的数据库语言,它使得存储、更新和存取信息更加容易。MySQL是一个客户机/服务器结构的实现,它由一个服务器守护程序mysqld和许多不同的客户程序以及库组成的。MySQL的主要目标是快速、健壮和易用。最初是因为MySQL的创始人需要这样的一个SQL服务器,它能处理与任何不昂贵硬件平台上提供数据库的厂家在一个数量级 上的大型数据库,但速度更快,MySQL因此就开发出来了。
一、Mysql的编译安装
为了确保Mysql数据库的功能的完整性,这里将采用源代码的方式安装Mysql。Mysql5.x系列版本使用最为广泛,该版本的稳定性,兼容性都不错,这里将选Mysql-5.5.2为例。
1、准备工作
1)为了避免发生端口的冲突,程序冲突等现象,建议先查询Mysql软件的安装情况,确定没RPM方式安装的Mysql-server的软件包,否则建议卸载!
[[email protected] ~]# rpm -ivh /media/Packages/ncurses-devel-5.9-13.20130511.el7.x86_64.rpm //安装光盘自带的ncurses-devel包
2)Mysql5.5需要cmake编译安装,所以先安装cmake包
安装gcc编译器 yum clean && yum install gcc gcc-c++ -y !!配置好Yum源
[[email protected] src]# tar zxf cmake-2.8.12.tar.gz
[[email protected] src]# cd cmake-2.8.12/
[[email protected] cmake-2.8.12]# ./configure gmake && gmake install
2、源码编译及安装
1)创建用户
为了增强数据库服务的权限控制,建议使用专门的运行用户,如mysql。此用户不需要直接登陆到系统。
[[email protected] ~]# groupadd mysql
[[email protected] ~]# useradd -M -s /sbin/nologin mysql -g mysql
2)解包
[[email protected] src]# tar zxf mysql-5.5.38.tar.gz
[[email protected] src]# cd mysql-5.5.38/
3)配置
[[email protected] mysql-5.5.38]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSCONFDIR=/etc -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all
make && make install
3、安装后的其他调整
1)对数据库目录进行权限设置
[[email protected] ~]# chown -R mysql:mysql /usr/local/mysql
2)初始化数据库
[[email protected] ~]# /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
3)设置环境变量
[[email protected] ~]# echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
[[email protected] ~]# . /etc/profile ///立即生效
4、添加系统服务
添加mysqld系统服务,以便chkconfig进行管理,可以使用源码包中提供的服务脚本,找到support-files文件夹下的mysql-server脚本文件 将其复制到/etc/rc.d/init.d/目录下改名为mysqld 然后设置执行权限,通过执行chkconfig命令添加为系统服务
[[email protected] mysql-5.5.38]# cp support-files/mysql.server /etc/rc.d/init.d/mysqld
[[email protected] mysql-5.5.38]# chmod +x /etc/rc.d/init.d/mysqld
[[email protected] mysql-5.5.38]# chkconfig --add mysqld
这样可以使用service工具或者执行/etc/init.d/mysqld 脚本来控制mysql数据库服务了
登陆Mysql