LAMP之mysql+php
接上篇:http://wskfnso.blog.51cto.com/4025557/1761877
二:安装mariadb10.0.24
1:安装mariadb,获取源程序、解压、创建软连接
[root@master1 ~]# tar xf mariadb-10.0.24-linux-x86_64.tar.gz -C /usr/local/
[root@master1 ~]# cd /usr/local/
[root@master1 local]# ln -sv mariadb-10.0.24-linux-x86_64 mysql
`mysql' -> `mariadb-10.0.24-linux-x86_64'
2:创建mysql系统用户和组
[root@master1 local]# groupadd -r mysql
[root@master1 local]# useradd -r -g mysql mysql -s /sbin/nologin
3:建立数据目录 存放数据,并把数据目录改为mysql用户和组
[root@master1 local]# mkdir -pv /mydata/data
[root@master1 local]# chown -R mysql.mysql /mydata/data/
4:安装数据库
[root@master1 mysql]# scripts/mysql_install_db --datadir=/mydata/data/ --user=mysql --basedir=/usr/local/mysql/
5:为mysql 提供配置文件,并修改如下
[root@master1 mysql]# cp support-files/my-large.cnf /etc/my.cnf
thread_concurrency = 2 //改成cpu的两倍
basedir = /usr/local/mysql //数据库安装目录
datadir = /mydata/data //数据目录
innodb_file_per_table = on //打开innodb引擎
skip_name_resolve = on //跳过DNS解析
6:提供启动脚本,并使其开机自启动
[root@master1 mysql]# cp support-files/mysql.server /etc/rc.d/init.d/mysqld
[root@master1 mysql]# chkconfig --add mysqld
[root@master1 mysql]# chkconfig --list mysqld
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
7:启动mysql
[root@master1 mysql]# service mysqld start
8:修改头文件和库文件
(1):输出mysql的头文件至系统头文件路径/usr/include:
# ln -sv /usr/local/mysql/include /usr/include/mysql
(2):输出mysql的库文件给系统库查找路径:
# echo '/usr/local/mysql/lib' > /etc/ld.so.conf.d/mysql.conf
而后让系统重新载入系统库:
# ldconfig
# ldconfig -p | grep 'mysql'
(3):修改PATH环境变量,让系统可以直接使用mysql的相关命令
在/etc/profile.d/目录下建立mysql.sh文件! 写入如下内容:
export PATH=/usr/local/mysql/bin:$PATH
# source mysql.sh
# touch /etc/profile.d/mysql.sh
# echo "export PATH=/usr/local/mysql/bin:$PATH" > /etc/profile.d/mysql.sh
# source mysql.sh
9:删除密码用户:
mysql> drop user ''@'localhost';
Query OK, 0 rows affected (0.00 sec)
mysql> drop user ''@'localhost.localdomain';
Query OK, 0 rows affected (0.00 sec)
mysql> drop user 'root'@'localhost.localdomain';
Query OK, 0 rows affected (0.00 sec)
mysql> drop user 'root'@'::1';
Query OK, 0 rows affected (0.00 sec)
mysql> set password for 'root'@'localhost'=password('123456');
Query OK, 0 rows affected (0.00 sec)
mysql> set password for 'root'@'127.0.0.1'=password('123456');
Query OK, 0 rows affected (0.00 sec)
三:安装php5.6
说明:
--enable-maintainer-zts
(1):为了支持apache的worker或event这2个MPM,编译时使用 --enable-maintainer-zts
(2):如果使用php5.3以上版本,为了连接mysql数据库,可以指定mysqlnd,这样本机就不需要先安装MYSQL或MYSQL开始包了。mysqlnd从php5.3开始可用,可以编译时绑定到它。(而不会和其它具体数据库形成依赖)。
从php5.4开始就是默认设置。
# ./configure --with-mysql=mysqlnd --with-pdo-mysql=mysqld --with-mysqli=mysqld
LAMP:注意要点:
apache使用3种方式连接PHP
(1)module模块方式:使用prefork进程时只用的是libphp5.so模块。如是是工作在work,event线程时用是是libphp5-zts.so
(2)GGI
(3):FastCgi 套接字通讯php-fpm
1:安装php
[root@master1 ~]# tar xf php-5.6.18.tar.gz
[root@master1 ~]# cd php-5.6.18
[root@master1 php-5.6.18]# ./configure --prefix=/usr/local/php --with-mysql=mysqlnd --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-openssl --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --enable-sockets --with-apxs2=/usr/local/httpd/bin/apxs --with-mcrypt --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2 --enable-maintainer-zts
[root@master1 php-5.6.18]# make && make install
2:为php提供配置文件
[root@master1 php-5.6.18]# cp php.ini-production /etc/php.ini
3:编辑apache配置文件httpd.conf.以支持php
# vim /etc/httpd/httpd.conf
添加如下内容:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
4:定为到DirectoryIndex index.html 添加index.php支持php
四:安装 xcache为php加速
1:安装xcache
root@master1 ~]# tar xf xcache-3.2.0.tar.gz
[root@master1 ~]# cd xcache-3.2.0
[root@master1 xcache-3.2.0]# /usr/local/php/bin/phpize
Configuring for:
PHP Api Version: 20131106
Zend Module Api No: 20131226
Zend Extension Api No: 220131226
[root@master1 xcache-3.2.0]# ./configure --enable-xcache --with-php-config=/usr/local/php/bin/php-config
[root@master1 xcache-3.2.0]# make && make install
安装结束时,会出现类似如下行:
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-zts-20131226/
2:整合xcache和php,首先将xcache提供的样例配置导入php.ini
# mkdir /etc/php.d
# cp xcache.ini /etc/php.d
说明:xcache.ini文件在xcache的源码目录中。
3:接下来编辑/etc/php.d/xcache.ini,找到类似zend_extension开头的行,修改为如下行:
extension = /usr/local/php/lib/php/extensions/no-debug-zts-20131226/xcache.so
注意:如果php.ini文件中有多条zend_extension指令行,要确保此新增的行排在第一位
4:httpd 重启载入模块

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

在PHP中,應使用password_hash和password_verify函數實現安全的密碼哈希處理,不應使用MD5或SHA1。1)password_hash生成包含鹽值的哈希,增強安全性。 2)password_verify驗證密碼,通過比較哈希值確保安全。 3)MD5和SHA1易受攻擊且缺乏鹽值,不適合現代密碼安全。

PHP類型提示提升代碼質量和可讀性。 1)標量類型提示:自PHP7.0起,允許在函數參數中指定基本數據類型,如int、float等。 2)返回類型提示:確保函數返回值類型的一致性。 3)聯合類型提示:自PHP8.0起,允許在函數參數或返回值中指定多個類型。 4)可空類型提示:允許包含null值,處理可能返回空值的函數。

PHP主要是過程式編程,但也支持面向對象編程(OOP);Python支持多種範式,包括OOP、函數式和過程式編程。 PHP適合web開發,Python適用於多種應用,如數據分析和機器學習。

PHP適合網頁開發和快速原型開發,Python適用於數據科學和機器學習。 1.PHP用於動態網頁開發,語法簡單,適合快速開發。 2.Python語法簡潔,適用於多領域,庫生態系統強大。

PHP起源於1994年,由RasmusLerdorf開發,最初用於跟踪網站訪問者,逐漸演變為服務器端腳本語言,廣泛應用於網頁開發。 Python由GuidovanRossum於1980年代末開發,1991年首次發布,強調代碼可讀性和簡潔性,適用於科學計算、數據分析等領域。

PHP在現代化進程中仍然重要,因為它支持大量網站和應用,並通過框架適應開發需求。 1.PHP7提升了性能並引入了新功能。 2.現代框架如Laravel、Symfony和CodeIgniter簡化開發,提高代碼質量。 3.性能優化和最佳實踐進一步提升應用效率。

PHP的核心優勢包括易於學習、強大的web開發支持、豐富的庫和框架、高性能和可擴展性、跨平台兼容性以及成本效益高。 1)易於學習和使用,適合初學者;2)與web服務器集成好,支持多種數據庫;3)擁有如Laravel等強大框架;4)通過優化可實現高性能;5)支持多種操作系統;6)開源,降低開發成本。

PHPhassignificantlyimpactedwebdevelopmentandextendsbeyondit.1)ItpowersmajorplatformslikeWordPressandexcelsindatabaseinteractions.2)PHP'sadaptabilityallowsittoscaleforlargeapplicationsusingframeworkslikeLaravel.3)Beyondweb,PHPisusedincommand-linescrip
