咱们此前已经说过,要想编译php5.4的话就须要安装MySQL,事实上在php5.4后MySQL不装也可以单独编译安装php5.4了,只是必需要在编译的时候使用—withmysql=mysqlnd让它实如今本地进行加载。php
LAMP安装次序:apr --> apr-util --> httpd --> MySQLmysql
安装MySQL
- 下载源码包:
- 解压mysql-5.5.28:
注:解压后推荐使用建立链接的方式连接过去,不要改变它的原有名称,这样它的版本号及平台都会保留,容易识别正在识别的是什么版本的。sql
- 新建用户以安全方式运行进程:
对咱们而言,要想初始化安装MySQL得使用mysql用户mysql组,因此得建立mysql用户mysql组,为保证系统安全性,mysql为系统用户,不能登陆系统只能运行某个服务。数据库
INSTALL-BINARY:这个文件中明确说明了安装binary格式的mysql的步骤;安全
如:服务器
注意:MySQL目录下的全部mysql目录下的全部文件的属主属组都须要改为mysql。网络
- 准备数据存放的文件系统:
查看初始化的选项:并发
--user=user_name:表示以哪一个用户的身份进行初始化函数
--datadir=path:数据目录性能
注意:
mysql运行起来后是一个服务器,这个服务器未来须要闯将数据库数据表,这些数据此前使用rpm包安装时保存在/var/lib/mysql下,而此处解压安装安装在当前目录下的data目录下,可是事实上将其放在软件安装路径下不是一个很好的选择,所以须要另外指定路径。
通常来说,数据根据企业规模的不一样可能会变得很是大,因此通常而言建议放在一个独立的分区上,并且是一个独立的逻辑卷上,由于放在逻辑卷上未来数据增大时能够很是方便的扩大数据边界,因此应尽量放在一个逻辑卷上,所以就须要使用datadir指定另外的位置在什么地方,由于它会将初始化的结果保存在数据目录下而默认为data,此处就使用逻辑卷;
建立逻辑卷:
- 初始化mysql-5.5.28:
注意:初始化完成后必定要记得mysql安装目录下的文件的属主不要给mysql用户,由于未来一旦有人攻破mysql进程,他将得到整个文件的全部权限,因此通常而言将其属主改回root用户。
那通常来说若是把数据放在data中,若是没有改别的位置,数据还放在data中,那它的属主就不能是root。
此刻为止,MySQL的安装基本成功!
- 为mysql提供主配置文件:
MySQL的配置文件:
/etc/my.cnf,MySQL的配置文件由n段组成
配置文件格式:使用中括号式的分段式,一段指令只对一个片断生效。它是一个集中式的配置文件,能够为多种程序提供配置文件,如:
[mysql] #客户端配置文件
[mysqld] #服务器端配置文件
[client] #对全部的客户端程序都生效
MySQL寻找配置文件路径的步骤:
MySQL配置文件比较独特,MySQL找配置文件时会先找/etc/my.cnf -->
找完这个后,会找/etc/mysql/my.cnf -->
找完这个后,找$BASEDIR($BASEDIR是MySQL进程或实例的运行目录,通常来说,就是安装目录)下的my.cnf,即$BASEDIR/my.cnf -->
找完这个后,会找$DATADIR/my.cnf -->
找完这个后,会找用户家目录下的.my.cnf即-/.my.cnf,但由于运行mysql的用户mysql,mysql没有家目录,因此找不着。
步骤小结:/etc/my.cnf --> /etc/mysql/my.cnf --> $BASEDIR/my.cnf --> -/my.cnf
注意:
- 全部路径找完以后,这四个目录中的配置可能会有冲突的,以最后一个为准。后一个会覆盖前一个。
- 就算没有配置文件,mysql也能运行起来,由于它的不少配置都有默认定义的,咱们要想运行mysql,须要给它提供一个配置文件。
MySQL为咱们提供了四个配置文件样例:
这四个mysql提供的配置文件的主要区别主要在于内存大小,咱们按需使用便可。
另外还须要添加以下一行指定mysql数据文件的存放位置并按需修改并发线程数:
thread_concurrency:线程并发数,数量设定为CPU数量*2;
- 为mysql提供sysv服务脚本:
mysql.server是MySQL为咱们提供的脚本;
添加至服务列表:
然后就能够启动服务测试使用了。
为了使用mysql的安装符合系统使用规范,并将其开发组件导出给系统使用,这里还须要进行以下步骤!
- 输出mysql的man手册至man命令的查找路径:
编辑/etc/man.config,添加以下行便可:
- 输出mysql的头文件至系统头文件路径/usr/include:
这能够经过简单的建立连接实现:
- 输出mysql的库文件给系统库查找路径:
也可使用以下方式输出库文件路径:
# echo '/usr/local/mysql/lib' > /etc/ld.so.conf.d/mysql.conf
然后让系统从新载入系统库:
- 修改PATH环境变量,让系统能够直接使用mysql的相关命令:
MySQL内部变量、通配符及部分经常使用函数:
performance_schema:系统状态信息收集库,如:mysql已经接受了多少个用户请求,有多少个用户链接过,用户链接后网络发送了多少数据过去。这些信息可直接查看。
在MySQL服务器内部有两类变量:(MySQL维持了两类变量)
注意:未来对MySQL的管理主要就集中在这两类变量上,调整MySQL的运行特性,调优MySQL就是调整这些东西,查看调整MySQL性能后是否有提高,就查看状态变量。
- 服务器变量:
定义MySQL服务器运行属性(特性)。就是使用参数能够定义改变MySQL服务器的工做状态的,即配置文件中提供的那些指令,如:DATADIR在什么路径下、要不要启动日志、日志文件放在什么路径下等,就是定义MySQL运行起来后怎么运行的。
查看可以使用:
SHOW GLOBAL VARIABLES [LIKE ‘变量名(支持通配符)’]
查看某一特定变量可以使用:
SHOW GLOBAL VARIABLES LIKE ‘变量名’;
- 状态变量:
保存了mysql服务器运行时的统计数据
查看可以使用:
SHOW GLOBAL STATUS [LIKE ‘变量名(支持通配符)’]
使用示例:
MySQL通配符:
- _:任意单个字符;
- %:任意长度的任意字符;
显示当前MySQL的版本号:
显示当前默认的数据库:
显示当前登陆的用户: