搞了两个vps,都是自己安装系统。记录下,方便以后再用。
搭建LNMP,完整步骤如下:
centos 5.8(1) & 5.6(1)
mysql 5.6.10
php 5.4.12
nginx 1.2.7
另外,中途安装了zend optimizer扩展。
当然,首先得搭建PHP环境。下载的源码mysql,版本是5.6.10,当前的最新稳定版。这里记住,一定要下载源码,在mysql官网下载时,会提示你选择平台,选择下拉菜单中的最底下一个Source Code。
第一步:我们首先安装依赖库和开发工具
第二步:由于mysql5.5开始,不再使用configure安装,而是使用cmake。所以需要先安装cmake
第三步:cmake安装mysql(我已经下载好了mysql源码文件,放在U盘里,拷贝到/tmp目录下)
回车执行,执行完成后继续执行
make && make install
第四步:设置mysql
第五步:添加mysql用户和用户组,生成新的mysql授权表
第六步:启动mysql,设置mysql用户名和密码
搭建LNMP,完整步骤如下:
centos 5.8(1) & 5.6(1)
mysql 5.6.10
php 5.4.12
nginx 1.2.7
另外,中途安装了zend optimizer扩展。
当然,首先得搭建PHP环境。下载的源码mysql,版本是5.6.10,当前的最新稳定版。这里记住,一定要下载源码,在mysql官网下载时,会提示你选择平台,选择下拉菜单中的最底下一个Source Code。
第一步:我们首先安装依赖库和开发工具
点击(此处)折叠或打开
- #依赖库和开发工具
- 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
-
- #Nginx
- yum -y install pcre-devel zlib-devel
-
- #Php
- yum -y install gd-devel libjpeg-devel libpng-devel freetype-devel libxml2-devel curl-devel freetype-devel
-
- #Mysql
- yum -y install bison gcc gcc-c++ autoconf automake zlib* libxml* ncurses-devel libtool-ltdl-devel* mysql-devel
第二步:由于mysql5.5开始,不再使用configure安装,而是使用cmake。所以需要先安装cmake
点击(此处)折叠或打开
- wget http://www.cmake.org/files/v2.8/cmake-2.8.6.tar.gz
- tar -zxvf cmake-2.8.6.tar.gz
- cd cmake-2.8.6/
- ./configure
- make && make install
第三步:cmake安装mysql(我已经下载好了mysql源码文件,放在U盘里,拷贝到/tmp目录下)
点击(此处)折叠或打开
- //进入/tmp目录下
- tar -zxvf mysql-5.6.10.tar.gz
- cd mysql-5.6.10
-
- cmake
- -DCMAKE_INSTALL_PREFIX=/usr/local/mysql
- -DMYSQL_DATADIR=/user/local/mysql/data
- -DSYSCONFDIR=/etc
- -DEXTRA_CHARSETS=all
- -DDEFAULT_CHARSET=utf8
- -DDEFAULT_COLLATION=utf8_general_ci
- -DWITH_INNOBASE_STORAGE_ENGINE=1
- -DWITH_ARCHIVE_STORAGE_ENGINE=1
- -DWITH_BLACKHOLE_STORAGE_ENGINE=1
- -DWITH_FEDERATED_STORAGE_ENGINE=1
- -DWITH_PARTITION_STORAGE_ENGINE=1
- -DWITH_PERFSCHEMA_STORAGE_ENGINE=1
- -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock
- -DMYSQL_TCP_PORT=3306
- -DWITH_DEBUG=0
- -DENABLED_LOCAL_INFILE=1
第四步:设置mysql
点击(此处)折叠或打开
- #设置Mysql
- #在support-files目录中有五个配置信息文件(这里很重要,一定要根据自己的内存复制对应的cnf文件,否则mysql始终起不来):
- #my-default.cnf (默认内存 128M)
- cd /usr/local/mysql
- cp ./support-files/my-default.cnf /etc/my.cnf
- vi /etc/my.cnf
- #在 [mysqld] 段增加
- character_set_server = utf8
wait-timeout=30
max_connections = 512
default-storage-engine = Innodb
- #在 [mysqld] 段修改
- # max_allowed_packet = 16M
点击(此处)折叠或打开
- //添加mysql运行的用户和用户组
- groupadd mysql
- useradd -g mysql mysql -s /bin/false -d /home/mysql //没有shell,不可本机登陆(安全起见)
-
- cd /usr/local/mysql
- chown -R root .
- chown -R mysql data
- chgrp -R mysql .
-
- //生成新的mysql授权表
- //进入mysql安装目录下的脚本目录
- cd /usr/local/mysql/scripts
- //利用mysql_install_db脚本生成新的mysql授权表
- ./mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
-
- //mysql server在系统中的服务项设置
- //复制服务文件并修改
- cd /usr/local/mysql/support-files
- cp mysql.server mysqld
- //修改mysqld
- basedir=/usr/local/mysql
- datadir=/usr/local/mysql/data
-
- mv mysqld /etc/init.d/mysqld
- chmod 755 /etc/init.d/mysqld
-
-
-
-
点击(此处)折叠或打开
- vi /etc/profile
- 在export PATH前 加入
- PATH=$PATH:/usr/local/mysql/bin
-
- 保存
-
- 然后 source /etc/profile
- vi /etc/profile
- 或者
点击(此处)折叠或打开
- //设置软连接使mysql, mysqldump, mysqladmin这三个bin命令能在shell中直接运行
- sudo ln -s /usr/local/mysql/bin/mysql /usr/bin
- sudo ln -s /usr/local/mysql/bin/mysqldump /usr/bin
- sudo ln -s /usr/local/mysql/bin/mysqladmin /usr/bin
- //设置软连接使mysql, mysqldump, mysqladmin这三个bin命令能在shell中直接运行
-
- rm -rf /etc/mysql/my.cnf 因为已经把此文件复制到/etc/my.cnf 如果不删除的话,mysql启动不起来。
第六步:启动mysql,设置mysql用户名和密码
点击(此处)折叠或打开
- /etc/init.d/mysqld start
-
- //设置root密码
- mysqladmin -u root password "admin"
-
- //注意该处mysql数据库中文乱码解决,按理上面设置了utf8后这里不需再设置,但需进行判断是否正确。
-
- //然后进入mysql
- cd /usr/local/mysql/bin
- mysql -u root -p
- 提示输入密码
- mysql> show variables like '%character%';
- //结果:character_set_database,character_set_server两项都变为utf8了