• CentOS5+mysql+php的配置(转)


    困扰很久的linux下安装PHP的问题总算解决了,参考文档和经验都在下面了,供大家参考拉.
     
    使用的软件:
    freetype-2.1.10
    gd-2.0.33
    httpd-2.2.8
    jpegsrc.v6b
    libpng-1.2.8
    libxml2-2.6.26
    mysql-5.0.27
    php-5.2.5
    phpmyadmin-2.11.5.2
    zlib-1.2.3
    (下面的内容是参考资料和自己的经验结合,所以有些软件的版本不一样,希望大家谅解)
     
    一、安装Mysql
    1、建立msyql用户组
    [root@localhost ~]# grep mysql /etc/group
    #查询系统中是否有mysql这个用户组,没有则添加。
    [root@localhost ~]# groupadd mysql
    #增加一个名为mysql的用户组
    2、建立mysql用户
    [root@localhost ~]# grep mysql /etc/passwd
    #查询系统中是否有mysql这个用户,没有则添加。
    [root@localhost ~]# useradd mysql -g mysql -M -s /sbin/nologin
    #增加一个名为mysql的用户。
    -g:指定新用户所属的用户组(group)
    -M:不建立根目录
    -s:定义其使用的shell,/sbin/nologin代表用户不能登录系统。
    3、解压:mysql
    [root@localhost ~]# cd /usr/local/src/
    [root@localhost src]# tar -zxvf mysql-5.0.27.tar.gz
    #……(信息略)……
    #解压缩
    3、设置编译器的编译参数
    [root@localhost src]# cd /usr/local/src/mysql-5.0.27
    [root@localhost mysql-5.0.27]# ./configure --prefix=/usr/local/mysql --with-unix-socket-path=/tmp/mysql.sock --localstatedir=/usr/local/mysql/data --with-charset=gbk --without-debug --enable-assembler --without-isam --with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static
    #这些设置告诉编译器如何编译apache:
    –prefix=/usr/local/mysql 
    指定msyql安装目录
    –with-unix-socket-path=/tmp/mysql.sock
    这个是指定mysql服务器启动后,联机套接字文件所处的位置和文件名。
    –localstatedir=/usr/local/mysql/data
    指定mysql的数据库目录
    –with-charset=gbk 
    添加gbk中文字符支持
    –without-debug
    去除debug模式
    –enable-assembler
    使用一些字符函数的汇编版本
    –without-isam
    去掉isam表类型支持,现在很少用了,isam表是一种依赖平台的表
    –with-client-ldflags=-all-static
    –with-mysqld-ldflags=-all-static
    4、编译和安装
    [root@localhost mysql-5.0.27]# make
    #“make”命令把源文件编译成可执行的二进制文件
    [root@localhost mysql-5.0.27]# make install
    #“make install”把二进制文件和配置文件安装在合适的目录下
    6、初始化系统库
    [root@localhost mysql-5.0.27]# ./scripts/mysql_install_db
    7、其它设置
    [root@localhost mysql-5.0.27]# cp support-files/my-medium.cnf /etc/my.cnf -fv
    #注解:
    -f,删除目标中同名的文件或目录,并且不给任何提示。
    #还有一些其它的my.cnf配置文件。适合不同的应用规模。型式如my-*.cnf。根据自己的需要cp。 
    [root@localhost mysql-5.0.27]# cp support-files/mysql.server /etc/init.d/mysqld
    #添加到起动脚本
    [root@localhost mysql-5.0.27]# chmod 700 /etc/init.d/mysqld
    [root@localhost mysql-5.0.27]# cd /usr/local
    [root@localhost local]# chmod 750 mysql -R
    #注解:
    -R 递归改变目录及其内容的权限。
    [root@localhost local]# chown -R mysql.mysql /usr/local/mysql
    #设置所有者,mysql起动时会以mysql用户的身份运行,这样可以提高系统的安全性。
    [root@localhost local]# chown -R mysql.mysql /usr/local/mysql/data
    [root@localhost local]# cd /usr/local/mysql/libexec
    [root@localhost libexec]# cp mysqld mysqld.old
    [root@localhost libexec]# strip mysqld
    [root@localhost libexec]# chkconfig –add mysqld
    #添加一个服务,当然也可以手工添加服务。
    [root@localhost libexec]# chkconfig –level 345 mysqld on
    #设置开机时起动
    [root@localhost libexec]# service mysqld start
    #启动mysql服务
    [root@localhost libexec]# ln -s /usr/local/mysql/bin/mysql /sbin/mysql
    [root@localhost libexec]# ln -s /usr/local/mysql/bin/mysqladmin /sbin/mysqladmin
    [root@localhost libexec]# ln -s /usr/local/mysql/bin/mysqldump /sbin/mysqldump
    [root@localhost libexec]# mysqladmin -uroot password “youpassword”
    #设置root帐户的密码
    [root@localhost libexec]# mysql -uroot -p
    # 输入你设置的密码
    mysql>use mysql;
    mysql>delete from user where password=”";
    #删除用于本机匿名连接的空密码帐号
    mysql>flush privileges;
    mysql> show databases;
    +———-+
    | Database |
    +———-+
    | mysql |
    | test |
    +———-+
    2 rows in set (0.08 sec)
    #显示一下数据库,测试mysql是否安装正常。
    mysql> quit

    如果忘记密码,可以:
    我的系统是linux,最近新装好的mysql在进入mysql工具时,总是有错误提示:
    # mysql -uroot -p
    Enter password:
    ERROR 1045 (28000): Access denied for user 
    'root'@'localhost' (using password: NO)
    使用网上介绍的方法修改root用户的密码:
    # mysqladmin -uroot -p password 'newpassword'
    Enter password:
    mysqladmin: connect to server at 'localhost' failed
    error: 'Access denied for user 
    'root'@'localhost' (using password: YES)'
    现在终于被我找到了解决方法,如下(请先测试方法三,谢谢!):
    方法一:
    # /etc/init.d/mysql stop
    # mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
    # mysql -u root mysql
    mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
    mysql> FLUSH PRIVILEGES;
    mysql> quit
    # /etc/init.d/mysql restart
    # mysql -uroot -p
    Enter password: <输入新设的密码newpassword>

    二、安装Apache
    1、下载:apache
    [root@localhost src]# chmod +x httpd-2.2.8.tar.gz
    [root@localhost src]# tar -zxvf httpd-2.2.8.tar.gz 
    3)设置编译器的编译参数
    [root@localhost src]# cd httpd-2.2.8
    [root@localhost httpd-2.2.8]# ./configure –prefix=/usr/local/apache2 –enable-module=so 
    4)编译和安装:
    [root@localhost httpd-2.2.8]# make; make install
    #如果没有错误的话,那么Apache就已经安装在/usr/local/apache2目录中了
    3、启动服务:
    [root@localhost httpd-2.2.8]# /usr/local/apache2/bin/apachectl start
    4、确定启动状:
    [root@localhost apache2]# netstat -utl
    tcp 0 0 *:http *:* LISTEN
    #看到上面这行就表示你的Apache已经启动。
    #用浏览器访问,看到It works!,说明apache已经安装成功了,恭喜您!
     
    三、安装PHP
    1、准备目录:
            mkdir /usr/local/modules
            #jpeg目录
            mkdir /usr/local/modules/jpeg6
            mkdir /usr/local/modules/jpeg6/bin
            mkdir /usr/local/modules/jpeg6/lib
            mkdir /usr/local/modules/jpeg6/include
            mkdir /usr/local/modules/jpeg6/man
            mkdir /usr/local/modules/jpeg6/man/man1
    2、安装zlib
            # tar xzvf zlib-1.2.3.tar.gz
            # mv zlib-1.2.3 /usr/local/src/
            # cd /usr/local/src/zlib-1.2.3
            不要用--prefix自定义安装目录,影响gd的安装
            # ./configure
            # make && make install
    3、安装freetype
            # tar xzvf freetype-2.3.5.tar.bz2
            # mv freetype-2.3.5 /usr/local/src/
            # cd /usr/local/src/freetype-2.3.5
            # ./configure --prefix=/usr/local/modules/freetype
            # make && make install
    4、安装libpng
            # tar jxvf libpng-1.2.20.tar.bz2
            不要用--prefix自定义安装目录,影响gd的安装
            # mv libpng-1.2.20 /usr/local/src/
            # cd /usr/local/src/libpng-1.2.5
            # cp scripts/makefile.std makefile
            # make test
            # make install
    5、安装jpeg
            # tar xzvf jpegsrc.v6b.tar.gz
            # mv jpeg-6b /usr/local/src/
            # cd /usr/local/src/jpeg-6b
            # ./configure --prefix=/usr/local/modules/jpeg6 --enable-shared --enable-static
            # make && make install
    6、安装GD
            # tar xzvf gd-2.0.33.tar.gz
            # mv gd-2.0.33 /usr/local/src/
            # cd /usr/local/src/gd-2.0.33
            # ./configure --prefix=/usr/local/modules/gd --with-jpeg=/usr/local/modules/jpeg6 --with-png --with-zlib --with-freetype=/usr/local/modules/freetype 
            # make
            # make install
    7、安装PHP
            # tar -jxvf php-5.2.1.tar.bz2
            # mv php-5.2.1 /usr/local/src
            # cd /usr/local/src/php-5.2.1/
            # ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql --with-gd=/usr/local/modules/gd --with-jpeg-dir=/usr/local/modules/jpeg6 --with-png-dir=/usr/lib --with-freetype-dir=/usr/local/modules/freetype --with-zlib --enable-gd
      # make && make install
      #cp php.ini-dist /usr/local/lib/php.ini
    8、整合Apache和PHP
    修改/usr/local/apache2/conf/httpd.conf文件
    在行AddType application/x-gzip .gz .tgz后添加一行
    AddType application/x-httpd-php .php .phtml
    修改行DirectoryIndex  index.php
    重新启动Apache   并且在它的/usr/local/apache2/htdocs/目录创建一个phpinfo.php文件。
    内容如下:
    <?php
     phpinfo();
    ?>
    在IE中输入http://127.0.0.1/phpinfo.php
    9、配置php.ini
    去掉
    extension=php_gd
    extension=php_mysql.dll
    extension=php_mysqli.dll

    10、安装phpMyAdmin
     #tar –zvxf phpMyAdmin.tar.gz
     mv phpMyAdmin /usr/local/apache2/htdocs/phpmyadmin

    修改config.ini.php
    设置$cfg['blowfish_secret']='config';
     
     
    Over~~~~

    aliyun活动 https://www.aliyun.com/acts/limit-buy?userCode=re2o7acl
  • 相关阅读:
    antd Upload的使用
    table 的使用方法
    标题前点的制作
    插件multiBtnList的使用
    render的写法
    数据请求
    实体类为什么使用包装类
    el-table中如何遍历数组中对象里的数组?
    关于hash的描述,hashcode etc
    Java集合框架详解
  • 原文地址:https://www.cnblogs.com/wangbin/p/1508638.html
Copyright © 2020-2023  润新知