三.编译安装MariaDB-10.0.10
1.解压二进制安装包,创建软链接:
1 2 3
[root@MySQL ~]# tar xfmariadb-10.0.10-linux-x86_64.tar.gz -C /usr/local [root@mysql ~]# cd /usr/local/ [root@mysql local]# ln -smariadb-10.0.10-linux-x86_64/ mysql
2.创建mysql用户运行管理mysql服务
1 2 3
[root@mysql ~]# useradd -M -s /sbin/nologin-d /mydata/data -r mysql [root@mysql ~]# id mysql uid=496(mysql) gid=493(mysql)groups=493(mysql)
3.创建数据库数据存放磁盘目录
格式磁盘
1 2
[root@mysql ~]# echo -n -e"n\np\n3\n\n+10G\nt\n3\n8e\n\w\n" |fdisk /dev/sda [root@mysql ~]# partx -a /dev/sda
创建LVM
1 2 3 4 5 6 7 8 9 10 11 12 13
[root@mysql ~]# pvcreate /dev/sda3 Physical volume "/dev/sda3" successfully created [root@mysql ~]# vgcreate myvg /dev/sda3 Volume group "myvg" successfully created [root@mysql ~]# lvcreate -L 10g -n mylvmyvg Logical volume "mylv" created [root@mysql ~]# lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert mylv myvg -wi-a----- 10.00g root vg0 -wi-ao---- 20.00g swap vg0 -wi-ao---- 2.00g usr vg0 -wi-ao---- 10.00g var vg0 -wi-ao---- 20.00g
4.实现xfs文件系统支持并创建xfs文件系统
1 2
[root@mysql ~]# yum install xfsprogs [root@mysql ~]# mkfs -t xfs /dev/myvg/mylv
5.实现文件系统自动挂载
1 2 3 4 5 6
[root@mysql ~]# mkdir /mydata [root@mysql ~]# blkid /dev/myvg/mylv /dev/myvg/mylv: UUID="04a307f3-6877-4142-b05e-60e4d5504b39"TYPE="xfs" [root@mysql ~]# vim /etc/fstab UUID="04a307f3-6877-4142-b05e-60e4d5504b39" /mydata xfs defaults 0 0 [root@mysql ~]# mount -a
6.创建数据库数据文件在逻辑卷上的存放目录创建,更改目录属主属组
1 2
[root@mysql ~]# mkdir /mydata/data [root@mysql ~]# chown mysql:mysql/mydata/data/
7.初始化安装MariaDB
1 2 3 4 5
[root@mysql mysql]#scripts/mysql_install_db --user=mysql --datadir=/mydata/data [root@mysql mysql]# ls /mydata/data/ aria_log.00000001 ib_logfile0 mysql-bin.000001 mysql-bin.state aria_log_control ib_logfile1 mysql-bin.000002 performance_schema ibdata1 mysql mysql-bin.index test
8.mariadb配置文件创建及更改,有模版
安装系统的时候,/etc/路径下有一个my.cnf的,这里换个路径
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
[root@mysql mysql]# mkdir /etc/mysql [root@mysql mysql]# cpsupport-files/my-huge.cnf /etc/mysql/my.cnf [root@mysql mysql]# vim /etc/mysql/my.cnf [mysqld] datadir = /mydata/data port = 3306 socket = /tmp/mysql.sock skip-external-locking key_buffer_size = 384M max_allowed_packet = 1M table_open_cache = 512 sort_buffer_size = 2M read_buffer_size = 2M read_rnd_buffer_size = 8M myisam_sort_buffer_size = 64M thread_cache_size = 8 query_cache_size = 32M innodb_file_per_table = on # Try number of CPU's*2 forthread_concurrency thread_concurrency = 8
注意:
data_dir = /mydata/data #mysql数据文件存放目录
thread_concurrency = 8 #线程数:cpu核心*2
innodb_file_per_table = on #每个innodb文件一个表空间
9.mariadb服务脚本创建
因为mariadb和mysql是兼容的,直接命名成mysql好记忆
1 2 3 4
[root@mysql mysql]# cp support-files/mysql.server /etc/rc.d/init.d/mysqld [root@mysql mysql]# chkconfig --list mysqld service mysqld supports chkconfig, but isnot referenced in any runlevel (run 'chkconfig --add mysqld') [root@mysql mysql]# chkconfig –add mysqld
10.启动mysqld服务,测试启动
1 2 3 4
[root@mysql mysql]# service mysqld start Starting MySQL. [ OK ] [root@mysql mysql]# ss -tunl |grep 3306 tcp LISTEN 0 128 *:3306 *:*
11.mysqld服务的一些设置
设置环境变量:
1 2 3
[root@mysql mysql]# vim/etc/profile.d/mysqld.sh export PATH=/usr/local/mysql/bin:$PATH [root@mysql mysql]# source/etc/profile.d/mysqld.sh
输出mysql的头文件至系统头文件路径/usr/include。
1
[root@mysql mysql]# ln -sv/usr/local/mysql/include /usr/include/mysql
输出mysql的库文件给系统库查找路径,系统重新
1 2
[root@mysql mysql]# echo'/usr/local/mysql/lib' > /etc/ld.so.conf.d/mysql.conf [root@mysql mysql]# ldconfig
12.测试客户端启动:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
[root@mysql mysql]# mysql Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 4 Server version: 10.0.10-MariaDB-log MariaDBServer Copyright (c) 2000, 2014, Oracle, SkySQL Aband others. Type 'help;' or '\h' for help. Type '\c' toclear the current input statement. MariaDB [(none)]> select version(); +---------------------+ | version() | +---------------------+ | 10.0.10-MariaDB-log | +---------------------+ 1 row in set (0.00 sec)
13.给数据库设置一个密码。
1 2 3
[root@mysql mysql]# mysqladmin -u rootpassword New password: Confirm new password:
MariaDB安装完毕
将PHP主机本地网络的DNS服务器地址指向172.16.31.20
1 2
[root@php~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0 DNS=172.16.31.20
四.编译安装PHP-5.4.26
1.源码包解压安装
1 2 3
[root@php~]# tar xf php-5.4.26.tar.bz2 [root@php~]# cd php-5.4.26 [root@phpphp-5.4.26]# ./configure --prefix=/usr/local/php --with-mysql=mysqlnd --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-openssl --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --with-gd --enable-xml --enable-sockets --enable-fpm --with-mcrypt --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2 --enable-maintainer-zts
参数说明:
--prefix=/usr/local/php #指定php安装路径,如果不想使用php,可以之间删除
--with-mysql=mysqlnd --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd
#如果使用PHP5.3以上版本,为了链接MySQL数据库,可以指定mysqlnd,这样在本机就不需要先安装MySQL或MySQL开发包了。mysqlnd从php 5.3开始可用,可以编译时绑定到它(而不用和具体的MySQL客户端库绑定形成依赖),但从PHP 5.4开始它就是默认设置了
--with-openssl #支持openssl加密php页面
--enable-mbstring #启用多字节字符串支持
--with-freetype-dir #设定到FreeType 2的安装路径
--with-jpeg-dir #支持jpg图片
--with-png-dir #支持png图片
--with-zlib #支持zlib压缩传输
--with-libxml-dir=/usr #指定libxml2安装目录
--enable-xml #支持xml扩展
--enable-sockets #启用套接字支持
--enable-fpm #启用FastCGI模式
--with-mcrypt #支持mcrypt扩展
--with-config-file-path=/etc #指定配置文件所在目录
--with-config-file-scan-dir=/etc/php.d #设定在哪个路径下扫描配置文件
--with-bz2 #支持bzip2压缩格式
--enable-maintainer-zts #支持apache的worker或event这两个MPM
--with-gd #支持gd扩展
安装:
[root@phpphp-5.4.26]# make && make install
2.为php提供配置文件:
[root@phpphp-5.4.26]# vim php.ini-production /etc/php.ini
3.为php提供Sys启动控制脚本,加入开机启动。
1 2 3 4 5 6
[root@phpphp-5.4.26]# cp sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm [root@phpphp-5.4.26]# chmod +x /etc/rc.d/init.d/php-fpm [root@phpphp-5.4.26]# chkconfig --list php-fpm servicephp-fpm supports chkconfig, but is not referenced in any runlevel (run'chkconfig --add php-fpm') [root@phpphp-5.4.26]# chkconfig --add php-fpm [root@phpphp-5.4.26]# chkconfig php-fpm on
4.为php-fpm提供配置文件,编辑php-fpm配置文件,修改监听端口,默认是127.0.0.1。
1 2 3 4 5 6 7 8
[root@phpphp-5.4.26]# cp /usr/local/php/etc/php-fpm.conf.default/usr/local/php/etc/php-fpm.conf [root@phpphp-5.4.26]# vim /usr/local/php/etc/php-fpm.conf pm.max_children= 50 pm.start_servers= 5 pm.min_spare_servers= 2 pm.max_spare_servers= 8 pid =/usr/local/php5/var/run/php-fpm.pid listen =172.16.31.22:9000
php服务器的ip地址是17.16.31.22,监听端口改为php服务器的9000端口哦!o(∩_∩)o
5.启动php-fpm,检查php监听端口。
1 2 3 4
[root@phpphp-5.4.26]# service php-fpm start Startingphp-fpm done [root@phpphp-5.4.26]# ss -tunl |grep 9000 tcp LISTEN 0 128 172.16.31.22:9000 *:*
6.环境变量设置:
1 2 3 4 5 6 7 8 9
[root@phpphp-5.4.26]# vim /etc/profile.d/php.sh exportPATH=/usr/local/php/bin:$PATH [root@phpphp-5.4.26]# source /etc/profile.d/php.sh [root@phpphp-5.4.26]# php -v PHP5.4.26 (cli) (built: Dec 21 2014 01:53:51) Copyright(c) 1997-2014 The PHP Group ZendEngine v2.4.0, Copyright (c) 1998-2014 Zend Technologies
PHP部分配置完成。