PHP的Laravel框架结合MySQL与Redis数据库的使用部署_PHP
相对于熟读官方文档,更重要的是要把框架环境搭起来。
零、环境介绍
- 操作系统:centOS
- 数据库: mysql 5.6 (阿里云RDS)
- PHP 5.4.4 (>=5.4即可)
- Laravel 5.0
一、安装LNMP
在安装Laravel之前,需要把Linux + Nginx + Mysql + Php的环境搭建好。具体的搭建步骤这里就不再详述了。
P.S.
- Linux阿里云已经自带了,本文使用的是centOS 6.5 64位的ECS
- 关于Nginx和Apache的选择看自己喜好,本文使用的是反向代理能手Nginx
- 是否安装Mysql也要看自己的情况,例如你使用阿里云的RDS,那就没必要安装了
二、安装Composer
composer是用来管理PHP包依赖的工具,Laravel正使用此工具进来依赖管理。有两种安装方式
局部安装
全局安装,即在系统任意目录下可使用。本文只介绍此种安装方法。官方安装文档
分别执行以下两条命令
curl -sS https://getcomposer.org/installer | php mv composer.phar /usr/local/bin/composer
安装完成,使用以下命令看是否安装成功
composer -V
出现版本号,即说明安装成功
三、安装Laravel
按照Laravel的官方文档说明即可,建议使用【通过Laravel安装工具】,没什么坑,这里略过
提示:由于Laravel还依赖于一些的PHP扩展,所以使用yum安装
sudo install yum php-mysql php-mcrypt php-mbstring php-tokenizer php-openssl
安装完成后,在Nginx的配置文件(一般是/etc/nginx/conf.d/default.conf)最下方添加如下配置
location / { try_files $uri $uri/ /index.php?$query_string; }
来到你的laravel工程目录下,看到storage和vendor文件夹,使用以下命令修改其文件读写权限,让Nginx用户能读写它
sudo chmod -R 766 storage sudo chmod -R 766 vendor
四、让MVC跑起来!
在此之前,你应该读一下官方文档 路由、控制器、数据库使用基础、Eloquent ORM
至此,可以开始coding,开发一个 MVC的demo了,此demo的功能是将数据库表tbl_item从数据库里读出来,并以json格式响应给浏览器。
假设你已经通过laravel new demo来初始化你的web app。
- 数据库里建库(demo)、建表(tbl_item),(字段随意定)
- 配置配置文件 config/database.php
- 直接操作数据库,往tbl_item里插入一条数据
- 开始coding
demo/app/http/routes.php底部添加如下代码:
Route::get('/item/{id}', 'ItemController@showItem');
demo/app/http/controllers/ 目录新添文件 ItemController.php,代码如下:
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Item as Item; class ItemController extends Controller { private $model; public function __construct() { $this->model = new Item(); } public function showItem($id) { $users = $this->model->fetchAll(); echo json_encode($users); Log::info('获取用户列表,通过msyql'); } }
demo/app/目录下新增文件 Item.php 代码如下
<?php namespace App; use Illuminate\Database\Eloquent\Model; class Item extends Model { protected $fillable = ['name', 'price']; protected $guarded = ['id']; /** * The database table used by the model. * default: tbl_items * @var string */ // protected $table = 'tbl_items'; public function fetchAll(){ $items = $this->all()->toJson(); return $items; } }
使用浏览器访问http://yourIp/item/1,即可列出所有的item数据
五、Laravel结合Redis
直连DB是不够的,很快数据库访问就会成为系统的瓶颈。我们引入缓存Redis。还是一样的思路,先让系统跑起来。
1、安装启动Redis
安装
$ wget http://download.redis.io/releases/redis-3.0.1.tar.gz $ tar xzf redis-3.0.1.tar.gz $ cd redis-3.0.1 $ make
启动
$ src/redis-server
查看官方下载和安装文档,只需要几个命令即可
2、安装PHP PRedis
PRedis是PHP访问redis的扩展包,只需要下载原码即可,不需要安装PHP扩展(如php-redis.so)。但在这之前要介绍一个composer,因为laravel通过它来安装第三方程序包(管理依赖关系)。
cd 到你的App所在路径,修改composer.json,在require字段里,添加"predis/predis":"~1.0.1",然后当前目录下 sudo composer update,此时就会自动下载包需要的扩展包,这些扩展包将会被放在vendor目录下。如果出现内存不够这些报错,现在看来是内存分配不够的原因,重启一下服务器即可,彻底解决的办法要修改服务器配置,但我不清楚改哪里,后续再补
配置相关配置,查看官方文档即可。主要是配置config/database.php
'redis' => array( 'cluster' => false, 'default' => array('host' => '127.0.0.1', 'port' => 6379) )
3、coding
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\User as User; use Illuminate\Support\Facades\Redis as Redis; class UserController extends Controller { // use User; private $model; /** * Create a new controller instance. * * @return void */ public function __construct() { $this->model = new User(); } /** * Show * * @return Response */ public function showUser($id) { $redis = Redis::connection('default'); $cacheUsers = $redis->get('userList'); if( $cacheUsers ){ $users = $cacheUsers; print_r($users); Log::info('获取用户列表,通过redis'); }else{ $users = $this->model->fetchAll(); $redis->set('userList', $users); print_r($users); Log::info('获取用户列表,通过msyql'); } } }

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds



La défaillance de l'installation de MySQL est généralement causée par le manque de dépendances. Solution: 1. Utilisez System Package Manager (tel que Linux Apt, YUM ou DNF, Windows VisualC Redistribuable) pour installer les bibliothèques de dépendance manquantes, telles que SudoaptInstallLiBMysQlClient-Dev; 2. Vérifiez soigneusement les informations d'erreur et résolvez les dépendances complexes une par une; 3. Assurez-vous que la source du gestionnaire de package est correctement configurée et peut accéder au réseau; 4. Pour Windows, téléchargez et installez les bibliothèques d'exécution nécessaires. Développer l'habitude de lire des documents officiels et de faire bon usage des moteurs de recherche peut résoudre efficacement les problèmes.

Traiter efficacement 7 millions d'enregistrements et créer des cartes interactives avec la technologie géospatiale. Cet article explore comment traiter efficacement plus de 7 millions d'enregistrements en utilisant Laravel et MySQL et les convertir en visualisations de cartes interactives. Exigences initiales du projet de défi: extraire des informations précieuses en utilisant 7 millions d'enregistrements dans la base de données MySQL. Beaucoup de gens considèrent d'abord les langages de programmation, mais ignorent la base de données elle-même: peut-il répondre aux besoins? La migration des données ou l'ajustement structurel est-il requis? MySQL peut-il résister à une charge de données aussi importante? Analyse préliminaire: les filtres et les propriétés clés doivent être identifiés. Après analyse, il a été constaté que seuls quelques attributs étaient liés à la solution. Nous avons vérifié la faisabilité du filtre et établi certaines restrictions pour optimiser la recherche. Recherche de cartes basée sur la ville

MySQL a refusé de commencer? Ne paniquez pas, vérifions-le! De nombreux amis ont découvert que le service ne pouvait pas être démarré après avoir installé MySQL, et ils étaient si anxieux! Ne vous inquiétez pas, cet article vous emmènera pour le faire face calmement et découvrez le cerveau derrière! Après l'avoir lu, vous pouvez non seulement résoudre ce problème, mais aussi améliorer votre compréhension des services MySQL et vos idées de problèmes de dépannage, et devenir un administrateur de base de données plus puissant! Le service MySQL n'a pas réussi et il y a de nombreuses raisons, allant des erreurs de configuration simples aux problèmes système complexes. Commençons par les aspects les plus courants. Connaissances de base: une brève description du processus de démarrage du service MySQL Service Startup. Autrement dit, le système d'exploitation charge les fichiers liés à MySQL, puis démarre le démon mysql. Cela implique la configuration

L'optimisation des performances MySQL doit commencer à partir de trois aspects: configuration d'installation, indexation et optimisation des requêtes, surveillance et réglage. 1. Après l'installation, vous devez ajuster le fichier my.cnf en fonction de la configuration du serveur, tel que le paramètre innodb_buffer_pool_size, et fermer query_cache_size; 2. Créez un index approprié pour éviter les index excessifs et optimiser les instructions de requête, telles que l'utilisation de la commande Explication pour analyser le plan d'exécution; 3. Utilisez le propre outil de surveillance de MySQL (ShowProcessList, Showstatus) pour surveiller la santé de la base de données, et sauvegarde régulièrement et organisez la base de données. Ce n'est qu'en optimisant en continu ces étapes que les performances de la base de données MySQL peuvent être améliorées.

L'article présente le fonctionnement de la base de données MySQL. Tout d'abord, vous devez installer un client MySQL, tel que MySQLWorkBench ou le client de ligne de commande. 1. Utilisez la commande MySQL-UROot-P pour vous connecter au serveur et connecter avec le mot de passe du compte racine; 2. Utilisez Createdatabase pour créer une base de données et utilisez Sélectionner une base de données; 3. Utilisez CreateTable pour créer une table, définissez des champs et des types de données; 4. Utilisez InsertInto pour insérer des données, remettre en question les données, mettre à jour les données par mise à jour et supprimer les données par Supprimer. Ce n'est qu'en maîtrisant ces étapes, en apprenant à faire face à des problèmes courants et à l'optimisation des performances de la base de données que vous pouvez utiliser efficacement MySQL.

La solution à l'erreur d'installation de MySQL est: 1. Vérifiez soigneusement l'environnement système pour vous assurer que les exigences de la bibliothèque de dépendance MySQL sont satisfaites. Différents systèmes d'exploitation et exigences de version sont différents; 2. Lisez soigneusement le message d'erreur et prenez des mesures correspondantes en fonction des invites (telles que les fichiers de bibliothèque manquants ou les autorisations insuffisantes), telles que l'installation de dépendances ou l'utilisation de commandes sudo; 3. Si nécessaire, essayez d'installer le code source et vérifiez soigneusement le journal de compilation, mais cela nécessite une certaine quantité de connaissances et d'expérience Linux. La clé pour finalement résoudre le problème est de vérifier soigneusement l'environnement du système et les informations d'erreur et de se référer aux documents officiels.

Les ingénieurs DevOps sont souvent confrontés aux défis de l'optimisation et de la mise à jour de la base de données RDS, en particulier dans les situations de charge élevée, où les méthodes traditionnelles sont sujettes au risque de temps d'arrêt. Cet article présente la stratégie de déploiement AWS Blue / Green pour obtenir une mise à jour de la base de données RDS zéro à la base de données RDS. Dites au revoir au cauchemar de la mise à jour de mise à jour de la base de données! Cet article expliquera en détail la stratégie de déploiement bleu / vert et fournira des étapes opérationnelles dans l'environnement AWS pour vous aider à mettre à jour l'instance de base de données RDS sans affecter la disponibilité du service. Préparation D'abord, coordonner l'équipe de développement et sélectionner la période avec le trafic de charge de travail le plus bas pour les mises à jour. De bons conseils pratiques pour informer l'équipe à l'avance. Cet exemple montre comment réduire l'espace de stockage des instances de base de données avec un temps d'arrêt nul à l'aide du déploiement bleu / vert. Vous pouvez utiliser la console AWSRDS

Raisons et solutions courantes pour l'échec de l'installation MySQL: 1. Nom d'utilisateur ou mot de passe incorrect, ou le service MySQL n'est pas démarré, vous devez vérifier le nom d'utilisateur et le mot de passe et démarrer le service; 2. Conflits portuaires, vous devez modifier le port d'écoute MySQL ou fermer le programme qui occupe le port 3306; 3. La bibliothèque de dépendances est manquante, vous devez utiliser le gestionnaire de package système pour installer la bibliothèque de dépendances nécessaires; 4. Autorisations insuffisantes, vous devez utiliser les droits de Sudo ou d'administrateur pour exécuter l'installateur; 5. Fichier de configuration incorrect, vous devez vérifier le fichier de configuration My.cnf pour vous assurer que la configuration est correcte. Ce n'est qu'en travaillant régulièrement et soigneusement que MySQL peut être installé en douceur.
