MYSQL
一、简介
用户名:mysql
安装目录:/usr/local/mysql5.6
数据库目录:/data/mysql5.6/data
源码包:mysql-5.6.24.tar.gz
二、安装准备
1、添加用户
useradd -s /sbin/nologin mysql -s : 指定mysql账号无登录shell
2、建立所需目录
mkdir -p /data/mysql5.6/data 创建mysql进程使用的数据目录
chown -R mysql:mysql /data/mysql5.6
3、安装编译所需文件或程序
yum install gcc gcc-c++ cmake ncurses-devel bison
4、准备mysql-5.6.24.tar.gz安装包
三、安装
1、tar xzvf mysql-5.6.24.tar.gz
cd mysql-5.5.28
2、cmake
cmake -DMYSQL_USER=mysql -DCMAKE_INSTALL_PREFIX=/usr/local/mysql5.6 -DINSTALL_DATADIR=/data/mysql5.6/data -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1 -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1
参数说明:
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql //安装目录
-DMYSQL_DATADIR=/usr/local/mysql/data //数据库存放目录
-DWITH_MYISAM_STORAGE_ENGINE=1 //安装myisam存储引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1 //安装innodb存储引擎
-DWITH_ARCHIVE_STORAGE_ENGINE=1 //安装archive存储引擎
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 //安装blackhole存储引擎
-DENABLED_LOCAL_INFILE=1 //允许从本地导入数据
-DDEFAULT_CHARSET=utf8 //使用utf8字符
-DDEFAULT_COLLATION=utf8_general_ci //校验字符
-DEXTRA_CHARSETS=all //安装所有扩展字符集
-DMYSQL_TCP_PORT=3306 //MySQL监听端口
-DMYSQL_USER=mysql //MySQL用户名
其他参数:
-DWITH-EMBEDDED_SERVER=1 //编译成embedded MySQL library (libmysqld.a)
-DSYSCONFDIR=/etc //MySQL配辑文件
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock //Unix socket文件路径
-DWITH_READLINE=1 //快捷键功能
-DWITH_SSL=yes //SSL
-DWITH_MEMORY_STORAGE_ENGINE=1 //安装memory存储引擎
-DWITH_FEDERATED_STORAGE_ENGINE=1 //安装frderated存储引擎
-DWITH_PARTITION_STORAGE_ENGINE=1 //安装数据库分区
-DINSTALL_PLUGINDIR=/usr/local/mysql/plugin //插件文件及配置路径
3、make && make install
4、chown -R mysql:mysql /usr/local/mysql5.6/ 改变一个目录的所有人属性并同时改变改目录下所有文件的属性
5、mv (安装包路径)/mysql-5.6.24/support-files/my-large.cnf /etc/my.cnf 重命名/移动 一个目录
(有的mysql版本中my-large.cnf为my-default.cnf)
6、mv (安装包路径)/mysql-5.6.24/support-files/mysql.server /etc/init.d/mysqld
7、chmod a+x /etc/init.d/mysqld 权限修改命令,添加可执行权限
8、开启启动
chkconfig --level 345 mysqld on
9、设置环境变量
echo "export PATH=/usr/local/mysql5.6/bin/:$PATH" >> /etc/profile
source /etc/profile
10、
usr/local/mysql5.6/scripts/mysql_install_db --user=mysql --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql5.6 --datadir=/data/mysql/data
-------这里的datadir要和my.cnf文件中的datadir一样才行
(mysql5.6安装会提示找不到mysql_install_db,mysql5.5则不会,若提示找不到,则貌似提示注释器错误,没有/usr/bin/perl文件或者档案,解决办法(安装perl跟perl-devel即可):
执行 yum -y install perl perl-devel
后在初始化数据库即可。
)
11、vi /etc/my.cnf
basedir=/usr/local/mysql5.6
datadir=/data/mysql5.6/data
(这个要粘贴到【mysqld】下面,不要粘在最后面,不然会报错)
12、创建mysql管理员
/usr/local/mysql5.6/bin/mysqladmin -u root password 'new-password'
(这里会提示找不到/tmp/mysql.sock,重启下执行service mysqld start就可以了,如果还有错,就进入mysql的安装目录,执行scripts/mysql_install_db即可,若还不行,试试:http://www.jb51.net/article/48625.htm)
连接数据库:
mysql -u root -p -P port
php
一、简介
安装目录:/usr/local/php7.1
源码包:php-7.1.0.tar.gz
二、安装准备
1、将所需的库文件批量安装
yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers
yum -y install pcre-devel zlib-devel (顺便把nginx所需的库文件也装上)
yum -y install gd-devel libjpeg-devel libpng-devel freetype-devel libxml2-devel curl-devel(php所需)
2、php默认在/usr/lib/路径下寻找库文件
cp -frp /usr/lib64/libldap* /usr/lib/
(php默认在/usr/lib/路径下寻找库文件,而前面安装的php依赖的库文件都在lib64下面,所以要拷一份到/usr/lib下面)
3、手动安装其他的库文件
--------libiconv--------------
tar zxvf libiconv-1.14.tar.gz
cd libiconv-1.14
./configure --prefix=/usr/
make && make install
-------libmcrypt--------------
tar zxvf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8
./configure --prefix=/usr/local
make && make install
/sbin/ldconfig更新系统配置 得到最新的配置的数据
cd libltdl
make && make install
------mhash-------------------
tar zxvf mhash-0.9.9.9.tar.gz
cd mhash-0.9.9.9/
./configure
make && make install
------mcrypt-------------------
tar -zxvf mcrypt-2.6.8.tar.gz
cd mcrypt-2.6.8/
/sbin/ldconfig
./configure --prefix=/usr/local/mcrypt
(安装到这里,提示找不到libmcrypt, 是PATH变量的问题,解决办法是:设置软链接 ln -s /usr/local/bin/libmcrypt_config /usr/bin/libmcrypt_config ,继续./configure……仍不行,还是变量的问题,再加上一句:export LD_LIBRARY_PATH=/usr/local/lib: LD_LIBRARY_PATH 这样就成功了 ;再或者:
ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.la
ln -s /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.so
ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4
ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib/libmcrypt.so.4.4.8
ln -s /usr/local/bin/libmcrypt-config /usr/bin/libmcrypt-config
)
make && make install
三、安装php
mkdir -p /usr/local/php7.1
tar zxvf php-7.1.0.tar.gz
cd php-7.1.0
export LIBS="-lm -ltermcap -lresolv"
export DYLD_LIBRARY_PATH="/usr/local/mysql5.6/lib/:/lib/:/usr/lib/:/usr/local/lib:/lib64/:/usr/lib64/:/usr/local/lib64"
export LD_LIBRARY_PATH="/usr/local/mysql5.6/lib/:/lib/:/usr/lib/:/usr/local/lib:/lib64/:/usr/lib64/:/usr/local/lib64"
./configure --prefix=/usr/local/php7.1 --with-config-file-path=/etc --with-iconv-dir=/usr/local/ --with-freetype-dir=/usr/local --with-mysql=/usr/local/mysql5.6 --with-mysqli=/usr/local/mysql5.6/bin/mysql_config --with-jpeg-dir --with-png-dir --with-zlib --with-mhash --enable-sockets --enable-ftp --with-libxml-dir --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-ldap --with-ldap-sasl --enable-fpm --with-xmlrpc --enable-zip --enable-soap --without-pear
make ZEND_EXTRA_LIBS='-liconv'
make install
cp php.ini-production /etc/php.ini
将php-fpm作为服务运行:
cp php-7.1.0/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
cd /usr/local/php7.1/etc
mv php-fpm.conf.default php-fpm.conf
chmod 755 /etc/init.d/php-fpm
chkconfig --add php-fpm增加所指定的系统服务,让chkconfig指令得以管理它,并同时在系统启动的叙述文件内增加相关数据
chkconfig --level 345 php-fpm on
服务方式启动php-fpm
service php-fpm start
NGINX
一、简介
安装目录:/usr/local/nginx
源码包:nginx-1.11.6.tar.gz
二、安装准备
1、useradd www
2、安装pcre
tar zxvf pcre-8.32.tar.gz
cd pcre-8.32/
./configure --prefix=/usr/local/pcre
make && make install
三、安装nginx
tar zxvfnginx-1.11.6.tar.gz
cd nginx-1.11.6/
./configure --prefix=/usr/local/nginx --user=www --group=www --with-pcre=../pcre-8.32 --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-ipv6
make && make install
(遇到的问题:1、显示找不到pcre 原因:pcre的地址不对,应为其源码目录
2、显示make[1]: *** [objs/src/core/nginx.o] Error 1 ,解决办法:换了一个pcre的版本,重新安装之后再安装nginx,就成功了)
Nginx启动命令:/usr/local/nginx/sbin/nginx
(nginx关闭命令: /usr/local/nginx/nginx -s stop
nginx检查配置文件命令: /usr/local/nginx/nginx -t
在vi /etc/rc.local文件中
加入一行 /etc/init.d/nginx start 保存并退出,下次自启动)
那么lnmp就这样安装完成了!