[root@fcy mysql]# ll /mnt/mysql/total 39988-rw-r--r--. 1 root root 5768373 Jul 20 19:25 cmake-2.8.10.2.tar.gz #跨平台编译工具-rw-r--r--. 1 root root 35174149 Jul 20 19:20 mysql-5.6.10.tar.gz #mysql服务
安装源代码安装所需环境
yum –disablerepo=* --enablerepo=c6-mediagroupinstall “Development tools” –y
解压缩到/usr/local/src
[root@fcymysql]# tar -zxvf cmake-2.8.10.2.tar.gz -C /usr/local/src ......(过程略)[root@fcy mysql]# tar -zxvfmysql-5.6.10.tar.gz -C /usr/local/src ......(过程略)
进入/usr/local/src/cmake目录,指定安装目录为/usr/local/
[root@fcy cmake-2.8.10.2]# ./configure--prefix=/usr/local/ ......(过程略)[root@fcy cmake-2.8.10.2]#make &&make install ......(过程略)
进入/usr/local/mysql目录(安装之前记得卸载系统内的低版本mysql,不然会有冲突),进入后查看一下,发现有一个名称为INSTALL_SOURCE的文件,用vim编辑器打开,在3788行左右,有该版本mysql的安装过程
Setup的过程
用cmake编译mysql源代码(过程较耗时)
[root@fcy mysql-5.6.10]# cmake . ......(过程略)
过程中会报错,安装ncurses和ncurses-devel即可
yum–disablerepo=* --enablerepo=c6-media install ncurses ncurses-devel –y
安装完成后删除解压的mysql代码包,重新解压缩在编译即可
[root@fcy mysql-5.6.10]#Make&& make install
创建用户组musql
[root@fcymysql]# groupadd mysql
创建用户mysql并加入到mysql组
[root@fcymysql]# useradd -r -g mysql mysql
进入到/usr/local/mysql目录,修改所有文件的用户和组为mysql
[root@fcy mysql]# chown -R mysql:mysql .[root@fcy mysql]# lltotal 76-rw-r--r--. 1 mysql mysql 17987 Jan 23 2013 COPYING-rw-r--r--. 1 mysql mysql 7468 Jan 23 2013 INSTALL-BINARY-rw-r--r--. 1 mysql mysql 2552 Jan 23 2013 READMEdrwxr-xr-x. 2 mysql mysql 4096 Jul 20 21:10bindrwxr-xr-x. 4 mysql mysql 4096 Jul 20 21:09datadrwxr-xr-x. 2 mysql mysql 4096 Jul 20 21:09docsdrwxr-xr-x. 3 mysql mysql 4096 Jul 20 21:09includedrwxr-xr-x. 3 mysql mysql 4096 Jul 20 21:09libdrwxr-xr-x. 4 mysql mysql 4096 Jul 20 21:10mandrwxr-xr-x. 10 mysql mysql 4096 Jul 20 21:10 mysql-testdrwxr-xr-x. 2 mysql mysql 4096 Jul 20 21:10scriptsdrwxr-xr-x. 28 mysql mysql 4096 Jul 20 21:10 sharedrwxr-xr-x. 4 mysql mysql 4096 Jul 20 21:10sql-benchdrwxr-xr-x. 3 mysql mysql 4096 Jul 20 21:10 support-files
安装mysql默认数据库,并指定运行用户为mysql
[root@fcymysql]# scripts/mysql_install_db --user=mysql
查看/usr/local/mysql/data目录生成的默认数据库
[root@fcy mysql]# ll datatotal 110604-rw-rw----. 1 mysql mysql 50331648 Jul 2022:12 ib_logfile0-rw-rw----. 1 mysql mysql 50331648 Jul 2022:12 ib_logfile1-rw-rw----. 1 mysql mysql 12582912 Jul 2022:12 ibdata1drwxr-xr-x. 2 mysql mysql 4096 Jul 20 22:12 mysqldrwx------. 2 mysql mysql 4096 Jul 20 22:12 performance_schemadrwxr-xr-x.2 mysql mysql 4096 Jul 20 21:09 test
修改/usr/local/mysql/下的所有者为root
[root@fcy mysql]# chown -R root .[root@fcy mysql]# lltotal 80-rw-r--r--. 1 root mysql 17987 Jan 23 2013COPYING-rw-r--r--. 1 root mysql 7468 Jan 23 2013 INSTALL-BINARY-rw-r--r--. 1 root mysql 2552 Jan 23 2013 READMEdrwxr-xr-x. 2 root mysql 4096 Jul 20 21:10bindrwxr-xr-x. 5 root mysql 4096 Jul 20 22:12datadrwxr-xr-x. 2 root mysql 4096 Jul 20 21:09docsdrwxr-xr-x. 3 root mysql 4096 Jul 20 21:09includedrwxr-xr-x. 3 root mysql 4096 Jul 20 21:09libdrwxr-xr-x. 4 root mysql 4096 Jul 20 21:10man-rw-r--r--. 1 root root 943 Jul 20 22:12my.cnfdrwxr-xr-x. 10 root mysql 4096 Jul 20 21:10 mysql-testdrwxr-xr-x. 2 root mysql 4096 Jul 20 21:10scriptsdrwxr-xr-x. 28 root mysql 4096 Jul 20 21:10 sharedrwxr-xr-x. 4 root mysql 4096 Jul 20 21:10sql-benchdrwxr-xr-x. 3 root mysql 4096 Jul 20 21:10 support-files
特别的将/usr/local/mysql/data目录的所有者改为mysql
[root@fcy mysql]# chown -R mysql data[root@fcy mysql]# ll -d datadrwxr-xr-x. 5 mysql mysql 4096 Jul 20 22:12data
拷贝mysql的主配置文件到/etc/my.cnf
[root@fcy mysql]# cpsupport-files/my-default.cnf /etc/my.cnf
将mysql的路径添加到系统变量
刷新脚本并显示
[root@fcy mysql]# source /etc/profile[root@fcy mysql]# echo $PATH/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/mysql/bin
拷贝启动控制脚本到/etc/init.d/ 并重命名为mysqld
[root@fcy mysql]# cpsupport-files/mysql.server /etc/init.d/mysqld
添加mysql为开机自启动
[root@fcy mysql]# chkconfig --add mysqld[root@fcy mysql]# chkconfig --list |grepmysqldmysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
将mysql的lib库动态链接到系统lib库
[root@fcy mysql]# touch/etc/ld.so.conf.d/mysql.conf[root@fcy mysql]# echo"/usr/local/mysql/lib">>/etc/ld.so.conf.d/mysql
刷新并查看
[root@fcy mysql]# ldconfig[root@fcy mysql]# ldconfig -pv |grep mysql libmysqlclient_r.so.16(libc6) => /usr/lib/mysql/libmysqlclient_r.so.16 libmysqlclient.so.16(libc6) => /usr/lib/mysql/libmysqlclient.so.16
将man手册的路径告诉系统,方便查找man的相关帮助信息
[root@fcy mysql]# echo "MANPATH/usr/local/mysql/man" >>/etc/man.config
为mysql的头文件库创建链接
[root@fcy include]# pwd/usr/include[root@fcy include]# ln -s/usr/local/mysql/include/ mysql[root@fcy include]# ll |grep mysqllrwxrwxrwx. 1 root root 25 Jul 20 22:51mysql -> /usr/local/mysql/include/
启动mysql并检查端口3306是否启动
[root@fcy include]# service mysqld startStarting MySQL. SUCCESS![root@fcy include]# netstat -tupln |grepmysqldtcp 0 0 :::3306 :::* LISTEN 6496/mysqld
为mysql数据库设置登录密码(初始密码为空)
[root@fcy include]# mysqladmin -u root -ppassword ‘123456‘Enter password:
使用root账号登录并创建数据库
[root@fcy include]# mysql -u root -pEnter password:Welcome to the MySQL monitor. Commands end with ; or g.Your MySQL connection id is 6Server version: 5.6.10 Source distribution Copyright (c) 2000, 2013, Oracle and/or itsaffiliates. All rights reserved. Oracle is a registered trademark of OracleCorporation and/or itsaffiliates. Other names may be trademarksof their respectiveowners. Type ‘help;‘ or ‘h‘ for help. Type ‘c‘ toclear the current input statement. mysql>
创建数据库testdb
mysql> create databases testdb;ERROR 1064 (42000): You have an error inyour SQL syntax; check the manual that corresponds to your MySQL server versionfor the right syntax to use near ‘databases testdb‘ at line 1mysql> create database testdb;Query OK, 1 row affected (0.00 sec) mysql> show databases;+--------------------+| Database |+--------------------+| information_schema || mysql || performance_schema || test || testdb |+--------------------+5rows in set (0.00 sec)
查看文件中的数据库testdb
4、总结
注意源代码安装过程中的错误信息提示,一般都是缺少库文件或者安装工具,按照提示安装即可。
本文出自 “却邪水心泮” 博客,请务必保留此出处http://shmilyfl.blog.51cto.com/8897986/1676461
源代码安装mysql
标签:mysql 源代码
小编还为您整理了以下内容,可能对您也有帮助:
Linux 下二进制源码包安装mysql 详细过程
安装之前先把二进制源码准备好,可以从搜狐镜像下载:http://mirrors.sohu.com/
我准备的是mysql-5.5.15-linux2.6-i686.tar.gz ,Linux version 2.6.18-164.el5
实际工作中和虚拟机的配置有些地方可能会不相同
====================================================================
注意:mysql 安装的时候必须指定到 /usr/local 必须命名为mysql
二进制源码安装需要在安装目录/usr/local下运行
复制代码
代码如下:
//创建用户mysql
* groupadd -g 3306 mysql
* useradd -g mysql -u 3306 -M mysql
* id mysql
* chown -R mysql:mysql /mydata/ // mysql对目录要有写权限
* ll -d /mydata/
* cp /mysql-5.5.15-linux2.6-i686 /usr/local
* cd /usr/local/mysql // 开始初始化 mysql
* chown -R mysql:mysql .
* ln -sv /mysql-5.5.15-linux2.6-i686 mysql
* scripts/mysql_install_db --user=mysql --datadir=/mydata/data
// span style="color:#993300;"scripts脚本初始化/span 初始化 用来生成mysql数据库 数据库用来存放表等源数据信息
复制代码
代码如下:
//安装完成 下面配置启动
* ls support-files/ // 准备服务启动脚本
* cp support-files/mysql.server /etc/init.d/mysqld // 放入init.d
* chkconfig --add mysqld // 加入服务列表
* chkconfig --list mysqld // --list 显示出来
复制代码
代码如下:
//此时可以启动mysql了 但还需要配置mysql
* ls /etc/my.cnf
* ls support-files/
* cp support-files/my-large.cnf /etc/my.cnf
* vim /etc/my.cnf
[mysqld] // 找到该段 并添加datadir = /mydata/data
datadir = /mydata/data
* service mysqld start // 开启服务
* netstat -tnl // 3306 端口打开
* echo $PATH
* /usr/local/mysql/bin/mysql
* export PATH=$PATH:/usr/local/mysql/bin // span style="color:#cc6600;"注意/span:不加$ 就仅仅剩下你添加的路径
* vim /etc/profile // 在export 之前添加下面的路径
PATH=$PATH:/usr/local/mysql/bin // 永久生效的路径配置方法
* mysql // 此时mysql已经可启动了
复制代码
代码如下:
//mysql库文件的路径配置
* ls
* vim /etc/ld.so.conf // 修改库文件位置
* vim /etc/ld.so.conf.d/mysql.conf // 规范的配置 当前目录下以.CONF结尾都可以配置
* ldconfig -v | grep mysql // 重新加载所有库文件的路径 没有mysql的库文件
vim /etc/ld.so.conf.d/mysql.conf
/usr/local/mysql/lib // 新建mysql.conf 文件 在文件中添加这些内容
* ldconfig -v | grep mysql // 修改之后在重新加载一次 否则服务器不知道
//mysql库文件的路径配置
* ls
* vim /etc/ld.so.conf // 修改库文件位置
* vim /etc/ld.so.conf.d/mysql.conf // 规范的配置 当前目录下以.CONF结尾都可以配置
* ldconfig -v | grep mysql // 重新加载所有库文件的路径 没有mysql的库文件
vim /etc/ld.so.conf.d/mysql.conf
/usr/local/mysql/lib // 新建mysql.conf 文件 在文件中添加这些内容
* ldconfig -v | grep mysql // 修改之后在重新加载一次 否则服务器不知道
复制代码
代码如下:
//头文件的配置
库文件有哪些函数以及函数在别人编写程序的时候怎么调用 怎么传递参数 参数类型是什么 返回值类型是是什么 必须找到库文件所对应的头文件 库文件对应的头文件在/ usr/include
* ls /usr/include/
* ln -sv /usr/local/mysql/include /usr/include/mysql // 头文件的输出
* vim /etc/man
* vim /etc/man.config // 添加Man
MANPATH /usr/local/mysql/man
OK! mysql 配置成功---
freebsd9.1源码安装apache.mysql.php环境
新手不建议用源码安装,请慎重
1.安装9.1系统
2.通过Sysinstall安装预装软件
=========================================================
3.安装Linux_libio兼容包
rc.conf 增加一句linux_enable=true 应该是 linux_enable="YES"
========================================================
4.通过ports安装SSH守护进程(ports/security/sshgard)
5.通过Ports安装加密相关的软件(ports/security/mcrypt)
6.安装MYSQL
7.安装apr(/configure ,make install clean)
8.安装apr-util1.5.1(/configure --with-apr=/usr/local/apr)
9.安装Apache
10. 安装PHP
11.安装FastCGI
12.安装Xcache
13.安装Memcache
15.安装Proftpd
Freebsd支持中文.txt
设置全局的 locale 参考下面方法:
vi /etc/login.conf
最后增加这个:
chinese:Chinese Users Accounts:/
:charset=UTF-8:/
:lang=zh_CN.UTF-8:/
:tc=default:
然后修改你的passwd文件,使用vipw命令
user:password:1111:11:language:0:0:User Name:/home/user:/bin/sh
language位置写入chinese,关联上你的locale。
export LC_CTYPE="zh_CN.UTF-8"
export LC_ALL="zh_CN.UTF-8"
export LANG="zh_CN.UTF-8"
需要更新一下数据库,使用 cap_mkdb /etc/login.conf
登出再登录,使用命令 locale 就可以看到你的 locale 已经修改完成了
php需要环境.txt
1.curl,gd,mbstring,jpeg,png,php_memcache,xcache,mysql,apache
安装时都需要指定安装目录
Robin_预装包.txt
通过Sysinstall安装(光盘)
1.archives:libzip;zip;unzip
2.databases: sqlite
3.converters: libiconv(php用于编码转换)
4.devel: pre-8.20l(Apache);perl-5.12.4.3
5.emulators: linux_base兼容包
6.FTP: curl-1.21.3.2
7.graphics: giflib-4.1.6 ; jpeg-8.3 ; libexif-0.6.20 ; png-1.4.8
8.lang: perl-5.12.4.3 ; python ; ruby
9.all: libxml2-7.8-1 , freetype
ports/emulators/linux_libauo
ports/security/sshguard
ports/security/mcrypt
kldstat 命令内核挂载情况,是否关在linux.ko
开始安装
1、安装mysql
创建用户组mysql
shellpw groupadd mysql
添加用户至用户组
shell pw useradd -r -g mysql mysql
解压:因为mysql是已经编译好的版本,因此无需安装
cd /soft
tar –vzxf mysql-5.6.11.tar.gz 解压
mv mysql-5.6.11-free* /usr/local/servers/mysql
cd /usr/local/shadow/mysql
chown –R mysql . 更改当前文件夹下所有文件的用户(注意后面有.)
chgrp –R mysql . 更改当前文件夹下所有文件的组
./scripts/mysql_install_db –user=mysql 安装mysql服务,会生成一个my.cnf的配置文件
chown –R root . 修改mysql文件夹内所有文件用户为root
chown –R mysql data修改mysql文件夹内data文件夹用户为mysql
./bin/mysqld_safe –user=mysql 启动mysql服务
./bin/mysql –u root –p 密码为空
use mysql
Delete from user where host’127.0.0.1’;
select host,user,password from user;
update user set host=’%’,password=password(‘shadow’); //修改登录ip为任意;密码为shadow
flush privileges; //刷新mysql帐号权限
然后远程连一下数据库试试吧。。
初始化root密码
bin/mysqladmin -u root password 'newpassword'
bin/mysqladmin –u root password 123456
./mysqladmin -u root -p password '456'
然后系统会询问你现在的密码,你输入现在的密码123回车就可以了
下次使用MYSQL的时候,ROOT 的口令就是456了
测试帐号
bin/mysql –u root –p
然后输入密码,出现提示符:
mysql
技巧提示:
mysql #运行mysql 客户端,并开放root用户的远程访问权限。以便调试
use mysql
update user set host = '%' where user = 'root' and host 'localhost';
flush privileges;
quit
2、apache安装
Step 1
编译Apache的要求
1. 磁盘空间 2.ANSI- C编译器及编译环境 3.确保准确的时间 4.Perl5 [可选]
5. apr/apr-util = 1.2
需要先下载 apr-1.4.6.tar.gz 和 apr-util-1.5.1.tar.gz
配置并安装 地址 http://apr.apache.org/download.cgi
apr和apr-util包含在Apache httpd的发行源代码中,并且在绝大多数情况下使用都不会出现问题。
当然,如果apr或apr-util的1.0或1.1版本已经安装在你的系统中了,则必须将你的apr/apr-util升级到1.2版本,
或者将httpd单独分开编译。要使用发行源代码中自带的apr/apr-util源代码进行安装,你必须手动完成:
@note: 编译和安装 apr 1.4.6
tar -zxvf apr-1.4.6.tar.gz
cd srclib/apr-1.4.6
./configure –-prefix=/usr/local/apr/
make
make install
@note: 编译和安装 apr-util 1.5.1
tar -zxvf apr-util1.5.1.tar.gz
cd ../apr-util1.5.1
./configure –-prefix=/usr/local/apr-util/ –-with-apr=/usr/local/apr/
make
make install
step2-1安装httpd
tar zxvf httpd-2.2.15.tar.gz
cd ../httpd-2.2.15
安装示例: ./configure --prefix=/usr/local/servers/apache22 --enable-so --enable-deflate=shared --enable-ssl=shared --enable-expires=shared --enable-headers=shared --enable-rewrite=shared --enable-static-support --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr-util/bin/apu-1-config --with-mpm=prefork --enable-cache=shared --enable-disk-cache=shared --enable-mem-cache=shared --enable-vhost-alias=shared --enable-suexec --with-pcre
make
make install
apache 启动服务
/usr/local/servers/apache22/bin/httpd -k start restart stop
/usr/local/servers/apache22/bin/httpd -k graceful
/usr/local/apache/bin/apachectl -k restart
3、安装php
版本要求,至少5.4以上
安装apache需要vhost支持
可以平滑重启
1.安装mod_fastcgi
下载mod_fastcgi-2.4.6
解压缩
修改Makefile.AP2改名为Makefile
修改 top_dir=你的apache路径
然后执行命令make install 安装
2.phpcgi 服务启动 即安装php 需要php5.4以上
/usr/local/servers/php/sbin/php-fpm
安装示例: ./configure --prefix=/usr/local/php --with-apxs2=apache路径/bin/apxs2
--enable-fpm --with-zlib=/zlib路径 --with-bz2=/bzip2路径 --with-curl=/curl路径 --with-gd=/gd路径
--with-jpeg-dir=/jpeg路径 --with-png-dir=/png路径 --enable-mbstring --with-mcrypt=/mcrypt路径
--with-mysql=/mysql路径 --with-mysqli=/mysql路径 --with-libxml-dir=/xml路径 --enable-mysqlnd
我是这样进行安装配置的
./configure --prefix=/usr/local/servers/php --with-apxs2=/usr/local/servers/apache22/bin/apxs --enable-fpm --with-zlib --with-bz2 --with-curl --with-gd --enable-gd-jis-conv --with-freetype-dir --with-jpeg-dir --with-png-dir --enable-mbstring --enable-ftp --enable-exif --with-mcrypt --with-mysql --with-mysqli=mysqlnd --with-libxml-dir --enable-mysqlnd
完成上面会显示感谢使用PHP等字样
make
编译成功后出现"Build complete."字样,那么就可以进行安装了:
(make编译时fpm模块出错:解决办法php5.4.11/sapi/fpm/fpm/fpm_sockets.c文件修改三处代码 info.tcpi_sacked 改为: info.__tcpi_sacked
info.tcpi_unacked 改为: info.__tcpi_unacked)
make install
完成即可 可以平滑重启
3、拷贝php配置文件
cp php.ini-development(开发模式) 或者proction生产模式 /usr/local/servers/php/etc/php.ini
修改php.ini
disable_functions =system,exec,shell_exec,passthru,ini_alter,dl,pfsockopen,openlog,syslog,readlink,symlink,link,
leak,popen,escapeshellcmd,apache_child_terminate,apache_get_moles,apache_get_version,
apache_getenv,apache_note,apache_setenv,virtual;,phpinfo
4、修改配置
修改/usr/local/servers/php/etc/php.ini文件(新版本可能不需要)
register_globals = On
修改/usr/local/apache/conf/ httpd.conf文件
设置apache的默认文件名次序
DirectoryIndex index.html index.htm index.php
增加php后缀支持
AddType application/x-httpd-php .php .php3 .phtml
AddType application/x-httpd-php-source .phps
5、重启apache服务
/usr/local/apache/bin/apachectl -k restart
6、测试php
?php
echo phpinfo();
?
4、proftp 服务安装启动,安装ftp
/usr/local/servers/proftp/sbin/proftpd
安装示例:./configure --prefix=/usr/local/servers/proftpd
添加、修改、删除帐号
首先添加管理组
./ftpasswd --group --name=czh --gid=1001 --file=../etc/group
添加用户
./ftpasswd --passwd --name=sohuishangbao --uid=1004 --gid=80 --file=../etc/passwd
--shell=/sbin/nologin --home=/wwwroot/lianmeng
./ftpasswd --passwd --name=hsbczh --uid=1003 --gid=1001 --file=../etc/passwd
--shell=/sbin/nologin --home=/wwwroot/www.huishangbao.com/www
输入后,会提示输入用户的密码,密码不能太长,不能有特殊字符。
注意,以上路径需根据各服务具体路径而定
www1:*:1003:80:User :/home/www1:/usr/sbin/nologin
www2:*:1004:80:User :/home/www2:/usr/sbin/nologin
www3:*:1005:80:User :/home/www3:/usr/sbin/nologin
www4:*:1006:80:User :/home/www4:/usr/sbin/nologin
www5:*:1007:80:User :/home/www5:/usr/sbin/nologin
www6:*:1008:80:User :/home/www6:/usr/sbin/nologin
www7:*:1009:80:User :/home/www7:/usr/sbin/nologin
www8:*:1010:80:User :/home/www8:/usr/sbin/nologin
www9:*:1011:80:User :/home/www9:/usr/sbin/nologin
centos5 源码安装Nginx + mysql + apache + php的方法
主要依照的是张宴的一篇博文《http://blog.s135.com/post/366/》,安装的软件是也是从他提供的列表中下载,这里都是tar.gz格式,如果更希望是rpm格式的话,提供一个网址《http://rpmfind.net/linux/rpm2html/search.php》这里列出了比较完全的下载包。
我安装的系统:Centos5
1、下载;
我安装的下载来自张宴博文下的地址,下载保存的是home下自己目录的一个文件夹下:
复制代码
代码如下:
cd /home/xuxx/software
wget http://blog.s135.com/soft/linux/nginx_php/nginx/nginx-0.7.51.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/php/php-5.2.8.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/phpfpm/php-5.2.8-fpm-0.5.10.diff.gz
wget http://blog.s135.com/soft/linux/nginx_php/mysql/mysql-5.1.33.zip
wget http://blog.s135.com/soft/linux/nginx_php/libiconv/libiconv-1.13.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/mcrypt/libmcrypt-2.5.8.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/mcrypt/mcrypt-2.6.8.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/memcache/memcache-2.2.5.tgz
wget http://blog.s135.com/soft/linux/nginx_php/mhash/mhash-0.9.9.9.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/pcre/pcre-7.8.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/eaccelerator/eaccelerator-0.9.5.3.tar.bz2
wget http://blog.s135.com/soft/linux/nginx_php/pdo/PDO_MYSQL-1.0.2.tgz
wget http://blog.s135.com/soft/linux/nginx_php/imagick/ImageMagick.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/imagick/imagick-2.2.2.tgz
2、准备编译安装环境,需要编译源码用到gc++
建议如果是新安装的系统,使用yum upgrade更新下系统。
复制代码
代码如下:
sudo -s
LANG=C
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
注意:这里所有的命令是一行的而不能有换行符,如果是copy的时候,注意要去处该换行符
确保安装成功!才能正确使用编译。
3、安装:
一、安装PHP 5.2.8(FastCGI模式)
1、编译安装PHP 5.2.8所需的支持库:
1] libiconv库
复制代码
代码如下:
tar zxvf libiconv-1.13.tar.gz
cd libiconv-1.13/
./configure --prefix=/usr/local
make
make install
make clean
make distclean
cd ../
make clean 和make distclean都是删除安装过程中生成的缓存文件。当然如果你不介意放着也可以跳过这两步清理操作。
2]libmcrypt库
复制代码
代码如下:
tar zxvf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8/
./configure
make
make install
make clean
make distclean
/sbin/ldconfig
cd libltdl/
./configure --enable-ltdl-install
make
make install
make clean
make distclean
cd http://www.cnblogs.com/
3] mhash库
复制代码
代码如下:
tar zxvf mhash-0.9.9.9.tar.gz
cd mhash-0.9.9.9/
./configure
make
make install
cd ../
4]mcrypt库
注意:因为该库和libmcrypt有依赖性,所以在安装前必须知道libmcrypt,否则的话会出现:
错误
复制代码
代码如下:
checking for libmcrypt – version = 2.5.0…
*** ‘libmcrypt-config –version’ returned 2.4.0, but LIBMCRYPT (2.5.8)
*** was found! If libmcrypt-config was correct, then it is best
*** to remove the old version of LIBMCRYPT. You may also be able to fix the error
*** by modifying your LD_LIBRARY_PATH enviroment variable, or by editing
*** /etc/ld.so.conf. Make sure you have run ldconfig if that is
*** required on your system.
*** If libmcrypt-config was wrong, set the environment variable LIBMCRYPT_CONFIG
*** to point to the correct copy of libmcrypt-config, and remove the file config.cache
*** before re-running configure
configure: error: *** libmcrypt was not found
是因为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/lib/libmhash.a /usr/lib/libmhash.a
ln -s /usr/local/lib/libmhash.la /usr/lib/libmhash.la
ln -s /usr/local/lib/libmhash.so /usr/lib/libmhash.so
ln -s /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2
ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1
ln -s /usr/local/bin/libmcrypt-config /usr/bin/libmcrypt-config
然后再安装:
复制代码
代码如下:
tar zxvf mcrypt-2.6.8.tar.gz
cd mcrypt-2.6.8/
/sbin/ldconfig
./configure
make
make install
cd ../
二、安装mysql
复制代码
代码如下:
/usr/sbin/groupadd mysql
/usr/sbin/useradd -g mysql xxx
unzip mysql-5.1.33.zip
cd mysql-5.1.33/
./configure --prefix=/usr/local/webserver/mysql/ --enable-assembler --with-extra-charsets=complex --enable-thread-safe-client --with-big-tables
--with-readline --with-ssl --with-embedded-server --enable-local-infile --with-plugins=innobase
make
make install
make clean
make distclean
chmod +w /usr/local/webserver/mysql
chown -R xxx:mysql /usr/local/webserver/mysql
cp support-files/my-medium.cnf.sh /usr/local/webserver/mysql/my.cnf
cd ../
注意:这里编译./configure命令是一行的而不能有换行符,如果是copy的时候,注意要去处该换行符
在最后一步拷贝的时候,我安装完在support-files下没有my-medium.cnf而只有my-medium.cnf.sh所以将这个文件拷贝过去。
@张宴原文:
附:以下为附加步骤,如果你想在这台服务器上运行MySQL数据库,则执行以下两步。如果你只是希望让PHP支持MySQL扩展库,能够连接其他服务器上的MySQL数据库,那么,以下两步无需执行。
①、以xxx用户帐号的身份建立数据表:
复制代码
代码如下:
/usr/local/webserver/mysql/bin/mysql_install_db --basedir=/usr/local/webserver/mysql --datadir=/usr/local/webserver/mysql/data --user=xxx
②、启动MySQL(最后的表示在后台运行)
复制代码
代码如下:
/bin/sh /usr/local/webserver/mysql/bin/mysqld_safe --defaults-file=/usr/local/webserver/mysql/my.cnf
3、编译安装PHP(FastCGI模式)
复制代码
代码如下:
tar zxvf php-5.2.8.tar.gz
gzip -cd php-5.2.8-fpm-0.5.10.diff.gz | patch -d php-5.2.8 -p1
cd php-5.2.8/
./configure --prefix=/usr/local/webserver/php --with-config-file-path=/usr/local/webserver/php/etc --with-mysql=/usr/local/webserver/mysql
--with-mysqli=/usr/local/webserver/mysql/bin/mysql_config --with-iconv-dir=/usr/local --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib
--with-libxml-dir=/usr --enable-xml --disable-rpath --enable-discard-path --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem
--enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-fastcgi --enable-fpm --enable-force-cgi-redirect
--enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-ldap
--with-ldap-sasl
make ZEND_EXTRA_LIBS='-liconv'
make install
cp php.ini-dist /usr/local/webserver/php/etc/php.ini
cd ../
注意:这里./configure命令是一行的而不能有换行符,如果是copy的时候,注意要去处该换行符
4、编译安装PHP5扩展模块--可选安装
复制代码
代码如下:
tar zxvf memcache-2.2.5.tgz
cd memcache-2.2.5/
/usr/local/webserver/php/bin/phpize
./configure --with-php-config=/usr/local/webserver/php/bin/php-config
make
make install
make clean
make distclean
cd ../
tar jxvf eaccelerator-0.9.5.3.tar.bz2
cd eaccelerator-0.9.5.3/
/usr/local/webserver/php/bin/phpize
./configure --enable-eaccelerator=shared --with-php-config=/usr/local/webserver/php/bin/php-config
make
make install
make clean
make distclean
cd ../
tar zxvf PDO_MYSQL-1.0.2.tgz
cd PDO_MYSQL-1.0.2/
/usr/local/webserver/php/bin/phpize
./configure --with-php-config=/usr/local/webserver/php/bin/php-config --with-pdo-mysql=/usr/local/webserver/mysql
make
make install
make clean
make distclean
cd ../
tar zxvf ImageMagick.tar.gz
cd ImageMagick-6.5.1-2/
./configure
make
make install
make clean
make distclean
cd ../
tar zxvf imagick-2.2.2.tgz
cd imagick-2.2.2/
/usr/local/webserver/php/bin/phpize
./configure --with-php-config=/usr/local/webserver/php/bin/php-config
make
make install
make clean
make distclean
cd ../
5、修改php.ini文件
STRONG手工修改:/STRONG查找/usr/local/webserver/php/etc/php.ini中的extension_dir = "./"
修改为extension_dir = "/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20060613/"
并在此行后增加以下几行,然后保存:
extension = "memcache.so"
extension = "pdo_mysql.so"
extension = "imagick.so"
再查找output_buffering = Off
修改为output_buffering = On
6、配置eAccelerator加速PHP:
mkdir -p /usr/local/webserver/eaccelerator_cache
vi /usr/local/webserver/php/etc/php.ini
按shift+g键跳到配置文件的最末尾,加上以下配置信息:
复制代码
代码如下:
[eaccelerator]
zend_extension="/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20060613/eaccelerator.so"
eaccelerator.shm_size="128"
eaccelerator.cache_dir="/usr/local/webserver/eaccelerator_cache"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="300"
eaccelerator.shm_prune_period="120"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9"
修改配置文件:
vi /etc/sysctl.conf
kernel.shmmax = 134217728
然后执行以下命令使配置生效:/sbin/sysctl -p
以下的步骤和张宴步骤中一样配置,不再赘诉
centos5 源码安装Nginx + mysql + apache + php的方法
主要依照的是张宴的一篇博文《http://blog.s135.com/post/366/》,安装的软件是也是从他提供的列表中下载,这里都是tar.gz格式,如果更希望是rpm格式的话,提供一个网址《http://rpmfind.net/linux/rpm2html/search.php》这里列出了比较完全的下载包。
我安装的系统:Centos5
1、下载;
我安装的下载来自张宴博文下的地址,下载保存的是home下自己目录的一个文件夹下:
复制代码
代码如下:
cd /home/xuxx/software
wget http://blog.s135.com/soft/linux/nginx_php/nginx/nginx-0.7.51.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/php/php-5.2.8.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/phpfpm/php-5.2.8-fpm-0.5.10.diff.gz
wget http://blog.s135.com/soft/linux/nginx_php/mysql/mysql-5.1.33.zip
wget http://blog.s135.com/soft/linux/nginx_php/libiconv/libiconv-1.13.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/mcrypt/libmcrypt-2.5.8.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/mcrypt/mcrypt-2.6.8.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/memcache/memcache-2.2.5.tgz
wget http://blog.s135.com/soft/linux/nginx_php/mhash/mhash-0.9.9.9.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/pcre/pcre-7.8.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/eaccelerator/eaccelerator-0.9.5.3.tar.bz2
wget http://blog.s135.com/soft/linux/nginx_php/pdo/PDO_MYSQL-1.0.2.tgz
wget http://blog.s135.com/soft/linux/nginx_php/imagick/ImageMagick.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/imagick/imagick-2.2.2.tgz
2、准备编译安装环境,需要编译源码用到gc++
建议如果是新安装的系统,使用yum upgrade更新下系统。
复制代码
代码如下:
sudo -s
LANG=C
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
注意:这里所有的命令是一行的而不能有换行符,如果是copy的时候,注意要去处该换行符
确保安装成功!才能正确使用编译。
3、安装:
一、安装PHP 5.2.8(FastCGI模式)
1、编译安装PHP 5.2.8所需的支持库:
1] libiconv库
复制代码
代码如下:
tar zxvf libiconv-1.13.tar.gz
cd libiconv-1.13/
./configure --prefix=/usr/local
make
make install
make clean
make distclean
cd ../
make clean 和make distclean都是删除安装过程中生成的缓存文件。当然如果你不介意放着也可以跳过这两步清理操作。
2]libmcrypt库
复制代码
代码如下:
tar zxvf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8/
./configure
make
make install
make clean
make distclean
/sbin/ldconfig
cd libltdl/
./configure --enable-ltdl-install
make
make install
make clean
make distclean
cd http://www.cnblogs.com/
3] mhash库
复制代码
代码如下:
tar zxvf mhash-0.9.9.9.tar.gz
cd mhash-0.9.9.9/
./configure
make
make install
cd ../
4]mcrypt库
注意:因为该库和libmcrypt有依赖性,所以在安装前必须知道libmcrypt,否则的话会出现:
错误
复制代码
代码如下:
checking for libmcrypt – version = 2.5.0…
*** ‘libmcrypt-config –version’ returned 2.4.0, but LIBMCRYPT (2.5.8)
*** was found! If libmcrypt-config was correct, then it is best
*** to remove the old version of LIBMCRYPT. You may also be able to fix the error
*** by modifying your LD_LIBRARY_PATH enviroment variable, or by editing
*** /etc/ld.so.conf. Make sure you have run ldconfig if that is
*** required on your system.
*** If libmcrypt-config was wrong, set the environment variable LIBMCRYPT_CONFIG
*** to point to the correct copy of libmcrypt-config, and remove the file config.cache
*** before re-running configure
configure: error: *** libmcrypt was not found
是因为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/lib/libmhash.a /usr/lib/libmhash.a
ln -s /usr/local/lib/libmhash.la /usr/lib/libmhash.la
ln -s /usr/local/lib/libmhash.so /usr/lib/libmhash.so
ln -s /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2
ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1
ln -s /usr/local/bin/libmcrypt-config /usr/bin/libmcrypt-config
然后再安装:
复制代码
代码如下:
tar zxvf mcrypt-2.6.8.tar.gz
cd mcrypt-2.6.8/
/sbin/ldconfig
./configure
make
make install
cd ../
二、安装mysql
复制代码
代码如下:
/usr/sbin/groupadd mysql
/usr/sbin/useradd -g mysql xxx
unzip mysql-5.1.33.zip
cd mysql-5.1.33/
./configure --prefix=/usr/local/webserver/mysql/ --enable-assembler --with-extra-charsets=complex --enable-thread-safe-client --with-big-tables
--with-readline --with-ssl --with-embedded-server --enable-local-infile --with-plugins=innobase
make
make install
make clean
make distclean
chmod +w /usr/local/webserver/mysql
chown -R xxx:mysql /usr/local/webserver/mysql
cp support-files/my-medium.cnf.sh /usr/local/webserver/mysql/my.cnf
cd ../
注意:这里编译./configure命令是一行的而不能有换行符,如果是copy的时候,注意要去处该换行符
在最后一步拷贝的时候,我安装完在support-files下没有my-medium.cnf而只有my-medium.cnf.sh所以将这个文件拷贝过去。
@张宴原文:
附:以下为附加步骤,如果你想在这台服务器上运行MySQL数据库,则执行以下两步。如果你只是希望让PHP支持MySQL扩展库,能够连接其他服务器上的MySQL数据库,那么,以下两步无需执行。
①、以xxx用户帐号的身份建立数据表:
复制代码
代码如下:
/usr/local/webserver/mysql/bin/mysql_install_db --basedir=/usr/local/webserver/mysql --datadir=/usr/local/webserver/mysql/data --user=xxx
②、启动MySQL(最后的表示在后台运行)
复制代码
代码如下:
/bin/sh /usr/local/webserver/mysql/bin/mysqld_safe --defaults-file=/usr/local/webserver/mysql/my.cnf
3、编译安装PHP(FastCGI模式)
复制代码
代码如下:
tar zxvf php-5.2.8.tar.gz
gzip -cd php-5.2.8-fpm-0.5.10.diff.gz | patch -d php-5.2.8 -p1
cd php-5.2.8/
./configure --prefix=/usr/local/webserver/php --with-config-file-path=/usr/local/webserver/php/etc --with-mysql=/usr/local/webserver/mysql
--with-mysqli=/usr/local/webserver/mysql/bin/mysql_config --with-iconv-dir=/usr/local --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib
--with-libxml-dir=/usr --enable-xml --disable-rpath --enable-discard-path --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem
--enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-fastcgi --enable-fpm --enable-force-cgi-redirect
--enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-ldap
--with-ldap-sasl
make ZEND_EXTRA_LIBS='-liconv'
make install
cp php.ini-dist /usr/local/webserver/php/etc/php.ini
cd ../
注意:这里./configure命令是一行的而不能有换行符,如果是copy的时候,注意要去处该换行符
4、编译安装PHP5扩展模块--可选安装
复制代码
代码如下:
tar zxvf memcache-2.2.5.tgz
cd memcache-2.2.5/
/usr/local/webserver/php/bin/phpize
./configure --with-php-config=/usr/local/webserver/php/bin/php-config
make
make install
make clean
make distclean
cd ../
tar jxvf eaccelerator-0.9.5.3.tar.bz2
cd eaccelerator-0.9.5.3/
/usr/local/webserver/php/bin/phpize
./configure --enable-eaccelerator=shared --with-php-config=/usr/local/webserver/php/bin/php-config
make
make install
make clean
make distclean
cd ../
tar zxvf PDO_MYSQL-1.0.2.tgz
cd PDO_MYSQL-1.0.2/
/usr/local/webserver/php/bin/phpize
./configure --with-php-config=/usr/local/webserver/php/bin/php-config --with-pdo-mysql=/usr/local/webserver/mysql
make
make install
make clean
make distclean
cd ../
tar zxvf ImageMagick.tar.gz
cd ImageMagick-6.5.1-2/
./configure
make
make install
make clean
make distclean
cd ../
tar zxvf imagick-2.2.2.tgz
cd imagick-2.2.2/
/usr/local/webserver/php/bin/phpize
./configure --with-php-config=/usr/local/webserver/php/bin/php-config
make
make install
make clean
make distclean
cd ../
5、修改php.ini文件
STRONG手工修改:/STRONG查找/usr/local/webserver/php/etc/php.ini中的extension_dir = "./"
修改为extension_dir = "/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20060613/"
并在此行后增加以下几行,然后保存:
extension = "memcache.so"
extension = "pdo_mysql.so"
extension = "imagick.so"
再查找output_buffering = Off
修改为output_buffering = On
6、配置eAccelerator加速PHP:
mkdir -p /usr/local/webserver/eaccelerator_cache
vi /usr/local/webserver/php/etc/php.ini
按shift+g键跳到配置文件的最末尾,加上以下配置信息:
复制代码
代码如下:
[eaccelerator]
zend_extension="/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20060613/eaccelerator.so"
eaccelerator.shm_size="128"
eaccelerator.cache_dir="/usr/local/webserver/eaccelerator_cache"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="300"
eaccelerator.shm_prune_period="120"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9"
修改配置文件:
vi /etc/sysctl.conf
kernel.shmmax = 134217728
然后执行以下命令使配置生效:/sbin/sysctl -p
以下的步骤和张宴步骤中一样配置,不再赘诉
如何在linux下安装mysql数据库并配置
mysql最流行的关系型数据库之一,目前隶属于oracle公司,因体积小、速度快、总体拥有成本低,开放源代码这一特点,所以是我们日常开发的首选。
查找以前是否安装有mysql,使用下面命令: rpm -qa|grep -i mysql 如果显示有如下包则说明已安装mysql mysql-4.1.12-3.RHEL4.1 mysqlclient10-3.23.58-4.RHEL4.1
如果已安装,则需要删除已安装的数据库,使用以下命令来删除数据库 删除命令:rpm -e --nodeps 包名 ( rpm -ev mysql-4.1.12-3.RHEL4.1 ) 删除老版本mysql的开发头文件和库 命令:rm -fr /usr/lib/mysql rm -fr /usr/include/mysql 注意:卸载后/var/lib/mysql中的数据及/etc/my.cnf不会删除,如果确定没用后就手工删除 rm -f /etc/my.cnf rm -fr /var/lib/mysql
下载mysql的rpm包 可以通过wget下载具体的地址因为不能用链接请大家去官网去找 (1)MySQL-server-5.6.10-1.rhel5.x86_64.rpm:MySQL服务器; (2)MySQL-client-5.6.10-1.rhel5.x86_64.rpm:MySQL客户端; (3)MySQL-devel-5.6.10-1.rhel5.x86_64.rpm:Mysql开发依赖包。 下载后放到Liunx服务器中,如图所示
安装MySQL Server的rpm包 rpm -ivh MySQL-server-5.6.21-1.linux_glibc2.5.x86_64.rpm 安装过程如图所示 安装完成后会生成root用户的随机密码,请使用“cat /root/.mysql_secret”或类似命令进行查看。
安装MySQL客户端 rpm -ivh MySQL-client-5.6.21-1.linux_glibc2.5.x86_64.rpm
安装MySQL开发依赖包 rpm -ivh MySQL-devel-5.6.21-1.linux_glibc2.5.x86_64.rpm
启动msyql 安装完成后mysql是没有启动的,运行mysql命令会提示如下错误: ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) 可使用如下命令启动MySQL: service mysql start 或者使用如下命令: /etc/init.d/mysql start 可使用SET PASSWORD命令修改root用户的密码,参考如下:SET PASSWORD = PASSWORD('root123456');
登录MySQL 使用mysql命令登录MySQL服务器,运行MySQL的命令时,会提示需要设置root用户密码
设置开机自启动 /etc/init.d/mysql start 设置完成后重启系统,使用natstat –nat命令可看到MySQL的3306端口
至此我们已经安装好了mysql数据库,当然现在我们的数据库还不支持远程连接,远程连接会出现以下代码:1130,ERROR 1130: Host 192.168.0.10 is not allowed to connect to this MySQL server,可以通过以下以下来解决
改表法:在本机登入mysql后,更改“mysql”数据库里的“user”表里的“host”项,从”localhost”改为'%'。 mysql mysqluse mysql; mysqlselect 'host' from user where user='root';
好了,开始享受mysql带来的强大功能吧
如何源码安装mysql
方法/步骤
1.[root@localhost soft]# groupadd mysql 添加mysql标准组
[root@localhost soft]# useradd -g mysql mysql 添加mysql用户并加到mysql组中
2.安装mysql
[root@localhost soft]# tar -zxvf mysql-5.5.45.tar.gz
[root@localhost mysql-5.5.46]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci
# -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ #安装路径
# -DMYSQL_DATADIR=/usr/local/mysql/data \ #数据文件存放位置
# -DSYSCONFDIR=/etc \ #my.cnf路径
# -DWITH_MYISAM_STORAGE_ENGINE=1 \ #支持MyIASM引擎
# -DWITH_INNOBASE_STORAGE_ENGINE=1 \ #支持InnoDB引擎
# -DWITH_MEMORY_STORAGE_ENGINE=1 \ #支持Memory引擎
# -DWITH_READLINE=1 \ #快捷键功能(我没用过)
# -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \ #连接数据库socket路径
# -DMYSQL_TCP_PORT=3306 \ #端口
# -DENABLED_LOCAL_INFILE=1 \ #允许从本地导入数据
# -DWITH_PARTITION_STORAGE_ENGINE=1 \ #安装支持数据库分区
# -DEXTRA_CHARSETS=all \ #安装所有的字符集
# -DDEFAULT_CHARSET=utf8 \ #默认字符
# -DDEFAULT_COLLATION=utf8_general_ci \ #校验字符
3.修改目录所有者和所有组
[root@end mysql]# chown -R mysql:mysql .
4.初始化数据库
[root@end mysql]# scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data/
5.复制mysql服务启动配置文件(注意:在CentOS 6.4版操作系统的最小安装完成后,在/etc目录下会存在一个my.cnf,需要将此文件更名为其他的名字,如:/etc/my.cnf.bak,否则,该文件会干扰源码安装的MySQL的正确配置,造成无法启动。)
[root@end mysql]# cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf
注册为服务
[root@end mysql]# cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld
让chkconfig管理mysql服务
[root@end mysql]# chkconfig --add mysqld[root@end mysql]# chkconfig mysqld on
设置环境变量
在文件/etc/profile末尾添加
PATH=/usr/local/mysql/bin:$PATH
立即生效
[root@end mysql]# source /etc/profile
启动mysql服务
[root@end mysql]# service mysqld startStarting MySQL...
检查mysql服务是否启动
[root@end mysql]# netstat -tulnp |grep 3306
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 24351/mysqld
修改mysql用户root密码
[root@end mysql]# mysql -uroot 登录到mysql,首次登陆无密码
设置mysql密码
mysql> SET PASSWORD = PASSWORD('endmoon');
Query OK, 0 rows affected (0.00 sec)
用设置的密码登录
[root@end mysql]# mysql -u root -pEnter password: endmoon
若要设置root用户可以远程访问,执行
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.20' IDENTIFIED BY 'password' WITH GRANT OPTION;Query OK, 0 rows affected (0.00 sec)
配置防火墙
防火墙的3306端口默认没有开启,若要远程访问,需要开启这个端口
打开/etc/sysconfig/iptables,在-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT后面添加
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
[root@end mysql]# service iptables restart
使更改的防火墙配置生效 iptables:将链设置为 ACCEPT:filter [确定]
iptables:清除防火墙规则: [确定]
iptables:正在卸载模块: [确定]
iptables:应用防火墙规则:
mysql数据库的安装到这里就结束了