centos 编译安装mysql,centos7安装第三方软件
今天给各位分享centos 编译安装mysql的知识,其中也会对centos7安装第三方软件进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
centos系统编译安装nginx+php环境另加独立mysql教程
前端(nginx+php)ip:192.168.10.8
后端(独立mysql)ip:192.168.10.5
软件版本:libiconv-1.14.tar.gz mysql-5.1.63.tar.gz php-5.2.17.tar.gz php-5.2.17-fpm-0.5.14.diff.gz php-5.2.17-max-input-vars.patch
1.先在后端安装mysql
在192.168.10.5上只安装mysql.方法可以去看centos编译安装nginx+php-fpm+mysql里的mysql安装.
2.在前端安装php-fpm nginx和mysql-client
这里只说下安装mysql-client和php的编译安装.
代码如下 tar zxf mysql-5.1.63.tar.gz cd mysql-5.1.63
./configure--prefix=/usr/local/mysql--without-server
这里只需要加上--without-server就可以让mysql变成客户端了.
如果出现/bin/rm: cannot remove `libtoolt': No such file or directory,可以去看这篇文章Mysql安装:/bin/rm: cannot remove `libtoolt': No such file or directory.
没有问题后,执行命令:
代码如下 make make install
编译php的时候只需要加上--with-mysql=mysql客户端安装目录就可以了.这里我给出编译参数:
代码如下 ./configure--prefix=/usr/local/php--enable-fastcgi--enable-fpm--with-fpm-log=/var/log/php-fpm.log\
--with-fpm-conf=/etc/php-fpm.conf--with-fpm-pid=/var/run/php-fpm.pid--with-config-file-path=/etc\
--with-config-file-scan-dir=/etc/php.d--with-openssl--with-zlib--enable-bcmath--with-bz2--with-curl\
--enable-ftp--with-gd--enable-gd-native-ttf--with-jpeg-dir--with-png-dir--with-gettext--with-mhash\
--enable-mbstring--with-mcrypt--enable-soap--enable-zip--with-iconv=/usr/local/libiconv\
--with-mysql=/usr/local/mysql--with-mysqli=/usr/local/mysql/bin/mysql_config--without-pear
nginx的编译没有什么好说的了,我前面centos编译安装nginx+php-fpm+mysql这篇文章里已经有讲过了.
3.进行测试验证
当上面的一切都安装好之后,在后端的mysql里给出远程权限,如下:
代码如下 GRANT ALL PRIVILEGES ON*.* TO'root'@'%' IDENTIFIED BY'123456';
然后iptables上只允许192.168.10.8访问mysql端口,其他都拒绝.如:
代码如下 iptables-A RH-Firewall-1-INPUT-s 192.168.10.8-p tcp-m tcp--dport 3306-j ACCEPT
iptables-A RH-Firewall-1-INPUT-p tcp--dport 3306-j DROP
services iptables save
services iptables restart
然后在192.168.10.8上进行测试,是否可以远程连上mysql
mysql-h 192.168.10.5-u root-p
如果可以连上,就继续下一步的操作,不能连上的话请检查上面是否有错误的地方.
现在我们加个php页面来测试php是否可以连上mysql,脚本如下:
代码如下 ?php
$link=mysql_connect("192.168.10.5","root","123456");
if(!$link) echo"bad!";
else echo"ok!";
mysql_close();
?
成功的话是ok!的输出,失败的话是bad!的输出,我这里是成功的
mysql 5.5.x的只安装客户端.
需要的软件:libiconv-1.14.tar.gz mysql-5.5.25a.tar.gz
1.安装前的准备
安装前的准备,可以去看这篇文章centos编译安装nginx+php-fpm+mysql
2.安装libiconv
代码如下 ./configure--prefix=/usr/local/libiconv
make make install
3.只安装mysql客户端
代码如下 cmake. make mysqlclient libmysql
make install
这样就只安装了mysql客户端,然后可以输入whereis mysql来查看mysql安装位置.
whereis mysql
好了,可以看到跟yum安装的差不多.
4.安装php
以前mysql是5.1的时候,只需要加上--with-mysql=mysql客户端安装目录就可以了,但在mysql 5.5.x这个参数就要改变下了,下面是php的编译参数:
代码如下 ./configure--prefix=/usr/local/php--enable-fastcgi--enable-fpm--with-fpm-log=/var/log/php-fpm.log--with-fpm-conf=/etc/php-fpm.conf\
--with-fpm-pid=/var/run/php-fpm.pid--with-config-file-path=/etc--with-config-file-scan-dir=/etc/php.d\
--with-openssl--with-zlib--enable-bcmath--with-bz2--with-curl--enable-ftp\
--with-gd--enable-gd-native-ttf--with-jpeg-dir--with-png-dir--with-gettext--with-mhash\
--enable-mbstring--with-mcrypt--enable-soap--enable-zip--with-iconv=/usr/local/libiconv\
--with-mysql=shared,/usr--with-mysqli=shared,/usr/bin/mysql_config
大家可以看最后一行,--with-mysql=shared,/usr--with-mysqli=shared,/usr/bin/mysql_config这就是跟以前不同的行.好了,剩下的就不写了
CentOS5.3 - mysql-6.0.10-alpha 源代码和设置
1,下载mysql数据库源代码: mysql-6.0.10-alpha.tar.gz 2,解压文件比较多,解压也一段时间。 src]# tar vxzf mysql-6.0.10-alpha.tar.gz 3,进入目录进行->配置,编译,安装 ]# cd mysql-6.0.10-alpha配置生成 makefile文件 ]#./configure--sysconfdir=/etc checking for termcap functions library... configure: error: No curses/termcap library found出现错误,也就是生成 makefile文件出错了。 [root@localhost mysql-6.0.10-alpha]# make make:*** No targets specified and no makefile found. Stop.如果你硬要输入 make命令是不行的,因为 makefile根本没有生成成功。解决办法:我们加入--with-named-curses-libs=/usr/lib/libncursesw.so.5进行生成 makefile./configure--sysconfdir=/etc--with-named-curses-libs=/usr/lib/libncursesw.so.5 Thank you for choosing MySQL!看到这句话,生成 makefile成功了。下面进行make编译:需要的时间比较长。 ]# make编译安装虽然花费的时间比较长,但是它应该可以适合任何一个发行版本的 Linux,编译的中途过程我就不播放视频出来了,截断一部分。我现在已经编译完成。 make[1]: Leaving directory `/opt/mysql-6.0.10-alpha/sql-bench' Making all in win make[1]: Entering directory `/opt/mysql-6.0.10-alpha/win' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/opt/mysql-6.0.10-alpha/win'最后进行安装 ]# make install编译安装完毕,有时候需要很长时间,如何判断是否死机?注意观察主机的硬盘灯,编译安装时候硬盘灯是一闪一闪的,有数据读取。下面拷贝配置文件 ]# cp/usr/local/share/mysql/my-large.cnf/etc/my.cnf以后配置mysql,就修改/etc/my.cnf即可 4,初始化数据库# useradd-d/usr/local/var mysql# su- mysql$/usr/local/bin/mysql_install_db初始化出现错误。 Installing MySQL system tables... 090518 7:16:41 [ERROR]/usr/local/libexec/mysqld: unknown option'--skip-federated' 090518 7:16:41 [ERROR] Aborting 090518 7:16:41 [Note]/usr/local/libexec/mysqld: Shutdown complete我们解决办法是,先删掉/usr/local/var下的 mysql文件夹 rm-rf/usr/local/var/mysql然后修改 vi/etc/my.cnf找到skip-federated注释掉,也就是改成####skip-federated然后保存退出 su- mysql用会 mysql身份,来重新初始化/usr/local/bin/mysql_install_db这次成功了吧,没有出现错误信息。 5,启动服务器 [mysql@localhost var]$/usr/local/bin/mysqld_safe&现在成功了,用 netstat-tnl看到 3306熟悉的 mysql默认端口 6,登陆测试 [mysql@localhost local]$ mysql-u root成功的话,出现 mysql> mysql>\s mysql>\q可以使用 show databases;一般,如果你是编译安装mysql,建议你像我下面的做法提升为 root用户, su- cp/usr/local/share/mysql/mysql.server/etc/init.d/mysqld mysql关闭的命令为:/etc/init.d/mysqld stop [root@localhost~]#/etc/init.d/mysqld stop Shutting down MySQL.090518 07:26:41 mysqld_safe mysqld from pid file/usr/local/var/localhost.localdomain.pid ended SUCCESS!就会显示关闭成功。 mysql启动的命令为:/etc/init.d/mysqld start [root@localhost~]#/etc/init.d/mysqld start Starting MySQL. SUCCESS!下面修改服务器启动时候,就自动运行 mysql 6.0 vi/etc/rc.d/rc.local我把它运行在 tomcat前面,然后保存退出。#####################分隔######################--查看数据库的字符集 show variables like'character\_set\_%'; show variables like'collation_%'; 13:15浏览(587)评论(0)分类: CentOS 2009-07-21缩略显示 CentOS5.3编译 mod_jk 1.2.15链接器整合apache httpd和 tomcat关键字: centos mod_jk现在我们来做一个整合,也就是当访问 apache 80端口时候遇到 jsp文件也可以正常访问。如果不整合,你的apache 80是不能运行jsp文件的,只能使用8080端口,也就是tomcat来访问。如何整合呢?要借助一个叫做 apache tomcat的链接器。下面是官方网站的下载地址,目前为止最新版是 1.2.15。。。 文章最后我会把这个工具提供下载,如果官方网站太慢的话。首先下载 jakarta-tomcat-connectors-1.2.15-src.tar.gz到服务器解压 ]# tar xzvf jakarta-tomcat-connectors-1.2.15-src.tar.gz注意是进入: jk/native这个目录 ]# cd jakarta-tomcat-connectors-1.2.15-src/jk/native请确认你的 apache的 apxs文件位置 native]#./configure--with-apxs=/usr/local/apache2/bin/apxs编译生成mod_jk native]# make拷贝编译完成生成的 mod_jk.so文件,这里也是要注意你的apache modules目录位置 native]# cp./apache-2.0/mod_jk.so/usr/local/apache2/modules/===============================================修改apache配置文件# vi/etc/httpd.conf在DirectoryIndex中添加 index.jsp<IfModule dir_module> DirectoryIndex index.html index.jsp</IfModule>增加关于加载mod_jk的语句: LoadModule jk_module modules/mod_jk.so Include/usr/local/apache2/conf/mod_jk.conf添加以下内容(添加的时候去掉注释,可能文件不能显示中文):######指出mod_jk模块工作所需要的工作文件workers.properties的位置 JkWorkersFile/usr/local/apache2/conf/workers.properties###### Where to put jk logs JkLogFile/usr/local/apache2/logs/mod_jk.log###### Set the jk log level [debug/error/info] JkLogLevel info###### Select the log format JkLogStampFormat"[%a%b%d%H:%M:%S%Y]"###### JkOptions indicate to send SSL KEY SIZE, JkOptions+ForwardKeySize+ForwardURICompat-ForwardDirectories###### JkRequestLogFormat set the request format JkRequestLogFormat"%w%V%T"######将所有servlet和jsp请求通过ajp13的协议送给Tomcat,让Tomcat来处理 JkMount/servlet/* worker1 JkMount/*.jsp worker1 JkMount/*.do worker1把一些注释去掉吧,只些一些起作用的语句上去。保存退出。===================================================在/usr/local/apache2/conf/下面建立两个配置文件mod_jk.conf和workers.propertie注意:(如果没有 conf目录,可以建立,因为我安装时指定把 httpd.conf放在/etc下的,就没有 conf目录了)# vi mod_jk.conf添加以下内容(添加的时候去掉注释,可能文件不能显示中文):######指出mod_jk模块工作所需要的工作文件workers.properties的位置 JkWorkersFile/usr/local/apache2/conf/workers.properties###### Where to put jk logs JkLogFile/usr/local/apache2/logs/mod_jk.log###### Set the jk log level [debug/error/info] JkLogLevel info###### Select the log format JkLogStampFormat"[%a%b%d%H:%M:%S%Y]"###### JkOptions indicate to send SSL KEY SIZE, JkOptions+ForwardKeySize+ForwardURICompat-ForwardDirectories###### JkRequestLogFormat set the request format JkRequestLogFormat"%w%V%T"######将所有servlet和jsp请求通过ajp13的协议送给Tomcat,让Tomcat来处理 JkMount/servlet/* worker1 JkMount/*.jsp worker1 JkMount/*.do worker1------------------------------------------------------------# vi workers.properties添加以下内容:####### Defining a worker named worker1 and of type ajp13 worker.list=worker1####### Set properties for worker1 worker.worker1.type=ajp13 worker.worker1.host=localhost worker.worker1.port=8009 worker.worker1.lbfactor=50 worker.worker1.cachesize=10 worker.worker1.cache_timeout=600 worker.worker1.socket_keepalive=1 worker.worker1.socket_timeout=300-------------------我的tomcat配置文件路径:/usr/local/tomcat/conf/server.xml最后编辑Tomcat的配置文件server.xml,在<Host段中加入:<Context path="" docBase="/usr/local/apache2/htdocs" debug="0" reloadable="true" crossContext="true"/>重新启动Apache和Tomcat。。。 [root@localhost bin]#./shutdown.sh Using CATALINA_BASE:/usr/local/tomcat Using CATALINA_HOME:/usr/local/tomcat Using CATALINA_TMPDIR:/usr/local/tomcat/temp Using JRE_HOME:/usr/java/jdk1.7.0 [root@localhost bin]#./startup.sh Using CATALINA_BASE:/usr/local/tomcat Using CATALINA_HOME:/usr/local/tomcat Using CATALINA_TMPDIR:/usr/local/tomcat/temp Using JRE_HOME:/usr/java/jdk1.7.0#/usr/local/apache2/bin/apachectl stop#/usr/local/apache2/bin/apachectl start刚才我在修改 httpd.conf可能写入了一些多余信息导致apache配置文件出错,我注释就可以了。在/usr/local/apache2/htdocs/下删掉 index.html建立一个index.jsp,写入一些简单的内容:<% out.println("Hello www.17rumen.com");%>用浏览器访问服务器 ,看到正确的页面了。说明apache遇到jsp页面,它可以提交给 tomcat去处理。。。 18:21浏览(315)评论(0)分类: CentOS 2009-07-21缩略显示 centos“You don't have permission to access/index.html on this server.”关键字: centos Forbidden You don't have permission to access/index.html on this server.开始我以为我配置出错,花半天时间都没有搞定,今天终于搞定了.原因:index.html是用root用户建的文件,apache权限不够。解决方法:更改文件权限;chmod 755 index.html 17:09浏览(498)评论(0)分类: CentOS 2009-07-17缩略显示 CentOS5.3编译安装 apache 2.2.11 web服务器(httpd-2.2.11.tar.gz)关键字: centos apache(现检测是否已经安装apapche,如果有的话请卸载后重新安装) 1,首先你必须下载: httpd-2.2.11.tar.gz当然你也可以到官方 上下载。 2,解压 src]# tar vxzf httpd-2.2.11.tar.gz 3,进入目录# cd httpd-2.2.11 httpd-2.2.11]#./configure--sysconfdir=/etc--enable-ssl--enable-modules配置文件放在/etc下 no SSL-C headers found configure: error:...No recognized SSL/TLS toolkit detected没有ssl我们,生成makefile文件失败,以后再安装 openssl也可以 httpd-2.2.11]#./configure--sysconfdir=/etc--enable-modules好,这次没有发现什么错误,--enable-modules这个强烈建议加上,也就是说以后apache可以添加其他的模块,方便很多。下面进行编译,make编译需要一定的时间,不过比起编译mysql要快些。 httpd-2.2.11]# make下面进行安装 httpd-2.2.11]# make install安装完成了。。。 4,启动服务测试一下吧。 ]#/usr/local/apache2/bin/apachectl start netstat-tnl可以看到 80端口,说明apache启动了。 tcp 0 0:::80:::* LISTEN打开浏览器进行访问吧。# ifconfig查看 Linux服务器ip地址。 inet addr:192.168.138.128 看到It works!说明正常工作了 cd/usr/local/apache2/可以看到 htdocs就是 web服务器的目录所在你可以想我这样 vi test.html上面写一些信息,然后进行访问。让Apache自动启动# echo"/usr/local/apache2/bin/apachectl start&">>/etc/rc.local(或者手动在/etc/rc.d/rc.local中设置)好,然后重启服务器,就可以发现 apache自动启动了
如何在linux系统中centos7.6上面安装mysql数据库
安装mysql基本有三种办法:
1,源码编译。 2,二进制包方式安装 3, yum安装。
可以采用二进制包方式安装mysql,并进行优化配置。
1.安装之前,先创建mysql用户
[root@linuxprobe_nfs~]# useradd mysql-s/sbin/nologin-M
[root@linuxprobe_nfs~]# id mysql
uid=500(mysql) gid=500(mysql) groups=500(mysql)
2.软件包的下载及解压
[root@linuxprobe_nfs~]# mkdir/home/chenfan/tools-p
[root@linuxprobe_nfs~]# cd/home/chenfan/tools
在官网上下载mysql-5.5.32-linux2.6-x86_64.tar.gz
[root@linuxprobe_nfs tools]# ls
mysql-5.5.32-linux2.6-x86_64.tar.gz
[root@linuxprobe_nfs tools]# tar zxvf mysql-5.5.32-linux2.6-x86_64.tar.gz
[root@linuxprobe_nfs tools]# ls
mysql-5.5.32-linux2.6-x86_64 mysql-5.5.32-linux2.6-x86_64.tar.gz
[root@linuxprobe_nfs local]# mv mysql-5.5.32-linux2.6-x86_64/usr/local/mysql-5.5.32
###免编译安装 mysql二进制包安装与配置实战记录
[root@linuxprobe_nfs local]# cd/usr/local
[root@linuxprobe_nfs local]# ln-s mysql-5.5.32 mysql
###此处的软链接为了版本升级提供了便利
3.初始化数据库
[root@linuxprobe_nfs local]# mysql/scripts/mysql_install_db--basedir=/usr/local/mysql/--datadir=/usr/local/mysql/data/--user=mysql
###此处如果初始化发生错误,删除data目录下的内容,rm-fr mysql/data/*,重新初始化。
4.生成MySQL配置文件
[root@linuxprobe_nfs local]# cd mysql
[root@linuxprobe_nfs mysql]# cp support-files/my-small.cnf/etc/my.cnf
5.授权管理文件
[root@linuxprobe_nfs~]# chown-R mysql:mysql/usr/local/mysql/
[root@linuxprobe_nfs~]# ls-ld/usr/local/mysql/
drwxr-xr-x. 13 mysql mysql 4096 Jun 24 17:21/usr/local/mysql/
6.设置科学的启动方式
[root@linuxprobe_nfs mysql]# cp support-files/mysql.server/etc/init.d/mysqld
[root@linuxprobe_nfs mysql]# chmod+x/etc/init.d/mysqld
[root@linuxprobe_nfs mysql]#/etc/init.d/mysqld start
Starting MySQL... SUCCESS!
[root@linuxprobe_nfs mysql]# chkconfig--add mysqld
[root@linuxprobe_nfs mysql]# chkconfig mysqld on
[root@linuxprobe_nfs mysql]# chkconfig--list mysqld
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
###设置开机自启动mysql
7.配置MySQL环境变量
[root@linuxprobe_nfs mysql]# echo'PATH=/usr/local/mysql/bin:$PATH'>>/etc/profile
[root@linuxprobe_nfs mysql]# source/etc/profile
[root@linuxprobe_nfs mysql]# echo$PATH
/usr/local/mysql/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
###此处PATH路径的设置为了后续mysql命令的使用
8.mysql登陆与密码设置
[root@linuxprobe_nfs mysql]# mysql