laravel数据库连接问题

1.修改配置文件/.nev

DB_HOST=127.0.0.1     //数据库地址
DB_PORT=3306          //数据库端口
DB_DATABASE=database  //数据库名称
DB_USERNAME=root      //数据库账号
DB_PASSWORD=root      //数据库密码

2.开始测试是否连接成功

/App/Http/routes.php 路由代码如下(可以自定义)

Route::get(‘dbtest‘,‘Admin\[email protected]‘);

3.新建IndexController控制器

/App/Http/Controllers/IndexController 控制器代码如下(可以自定义)

<?php
namespace App\Http\Controllers\Admin;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\DB;

class IndexController extends Controller{

   public function dbcc(){
       $pdo=DB::connection()->getPdo();
         dd($pdo);
   }

}

4.浏览访问测试

浏览器访问http://127.0.0.1/index.php/dbtest 成功提示如下图

PDO {#123 ▼
  inTransaction: false
  attributes: {▼
    CASE: NATURAL
    ERRMODE: EXCEPTION
    AUTOCOMMIT: 1
    PERSISTENT: false
    DRIVER_NAME: "mysql"    SERVER_INFO: "Uptime: 3026  Threads: 4  Questions: 476  Slow queries: 0  Opens: 42  Flush tables: 1  Open tables: 1  Queries per second avg: 0.157"    ORACLE_NULLS: NATURAL
    CLIENT_VERSION: "mysqlnd 5.0.11-dev - 20120503 - $Id: f373ea5dd5538761406a8022a4b8a374418b240e $"    SERVER_VERSION: "5.5.40"    STATEMENT_CLASS: array:1 []    CONNECTION_STATUS: "127.0.0.1 via TCP/IP"    DEFAULT_FETCH_MODE: BOTH
  }}

遇到常见问题;

1.如果你的数据库表有前缀怎么处理

1.1/config/database.php找打如下代码

      ‘mysql‘ => [
            ‘driver‘    => ‘mysql‘,
            ‘host‘      => env(‘DB_HOST‘, ‘localhost‘),
            ‘database‘  => env(‘DB_DATABASE‘, ‘forge‘),
            ‘username‘  => env(‘DB_USERNAME‘, ‘forge‘),
            ‘password‘  => env(‘DB_PASSWORD‘, ‘‘),
            ‘charset‘   => ‘utf8‘,
            ‘collation‘ => ‘utf8_unicode_ci‘,
            ‘strict‘    => false,
            ‘engine‘    => null,
        ],

1.2修改成如下代码

        ‘mysql‘ => [
            ‘driver‘ => ‘mysql‘,
            ‘host‘ => env(‘DB_HOST‘, ‘localhost‘),
            ‘port‘ => env(‘DB_PORT‘, ‘3306‘),
            ‘database‘ => env(‘DB_DATABASE‘, ‘forge‘),
            ‘username‘ => env(‘DB_USERNAME‘, ‘forge‘),
            ‘password‘ => env(‘DB_PASSWORD‘, ‘‘),
            ‘prefix‘ => env(‘DB_PREFIX‘, ‘‘),
            ‘charset‘ => ‘utf8‘,
            ‘collation‘ => ‘utf8_unicode_ci‘,
            ‘strict‘ => false,
            ‘engine‘ => null,
        ],

1.3配置文件/.nev修改成如下代码

        DB_HOST=127.0.0.1    //数据库地址        
        DB_PORT=3306      //数据库端口
        DB_DATABASE=database  //数据库名称
        DB_PREFIX=unics_    //数据库表前缀名称
        DB_USERNAME=root    //数据库账号
        DB_PASSWORD=root    //数据库密码
时间: 2024-10-10 16:37:50

laravel数据库连接问题的相关文章

PHP Laravel框架 多数据库连接方法

1. 在config 下database.php中配置数据库连接  然后在使用时直接用connection指向该连接即可 DB::connection('connections-theatre')->table('tb_order_ticket')->insert($data); 2. 在model中重定向到指定数据库连接 <?php namespace App\ModelTh;class ThBase extends Base { protected $connection = 'co

laravel使用多个数据库连接

1.配置.env文件 1 DB_CONNECTION=mysql 2 DB_HOST=127.0.0.1 3 DB_PORT=3306 4 DB_DATABASE=database_name 5 DB_USERNAME=root 6 DB_PASSWORD= 7 8 DB_HOST_CENTER=127.0.0.1 9 DB_PORT_CENTER=3306 10 DB_DATABASE_CENTER=database_center 11 DB_USERNAME_CENTER=root 12 D

Laravel/Laravel-admin 使用多个数据库连接

1.配置.env 文件 DB_CONNECTION=mysqlDB_HOST=127.0.0.1DB_PORT=3306DB_DATABASE=yhadminDB_USERNAME=rootDB_PASSWORD=root DB_HOST_CENTER=127.0.0.1DB_PORT_CENTER=3306DB_DATABASE_CENTER=yhadmin_subDB_USERNAME_CENTER=rootDB_PASSWORD_CENTER=rootDB_PREFIX=yh_   2.配

Laravel中常见的错误与解决方法小结

一.报错: 「Can't swap PDO instance while within transaction」 通过查询 Laravel 源代码,可以确认异常是在 setPdo 方法中抛出的: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 <?php public function setPdo($pdo) {   if ($this->transactions >= 1) {     throw new RuntimeException("

Laravel框架的一些配置

服务器的配置 1.在apache下的配置 配置httpd-conf:php5_module.rewrite_module.Listen 配置extra/httpd-vhost:端口.站点.域名.默认首页 系统hosts:将域名指向本地 重启apache linux下记得修改文件夹权限:storage.vendor 2.在nginx下的配置 配置nginx.conf:端口.站点.域名.默认首页 FastCgi location ~ \.php$ { fastcgi_pass 127.0.0.1:9

Windows上使用Vagrant打造Laravel Homestead可协同跨平台开发环境

1.简介 Laravel 致力于让整个 PHP 开发过程变得让人愉悦,包括本地开发环境,为此官方为我们提供了一整套本地开发环境 —— Laravel Homestead. Laravel Homestead 是一个打包好各种 Laravel 开发所需要的工具及环境的 Vagrant 盒子(Vagrant 提供了一个便捷的方式来管理和设置虚拟机),该盒子为我们提供了优秀的开发环境,有了它,我们不再需要在本地环境安装 PHP.HHVM.Web服务器以及其它工具软件,我们也完全不用再担心误操作搞乱操作

laravel 入门

Laravel5.0学习--01 入门 本文以laravel5.0.22为例. 生产环境建议使用laravel5.1版本,因为该版本是长期支持版本.5.1文档更详细:http://laravel-china.org/docs/5.1. 环境需求 Laravel5.0 框架有一些系统上的需求: PHP 版本 >= 5.4 Mcrypt PHP 扩展 OpenSSL PHP 扩展 Mbstring PHP 扩展 Tokenizer PHP 扩展 在 PHP 5.5 之后, 有些操作系统需要手动安装

Laravel基本使用

laravel一.简介二.运行环境要求 1.php 版本>=5.5.9 2.Mcrypt PHP扩展 php的加密扩展,提供多种加密算法 3.openssl扩展 对传输的数据进行加密 4.mbstring扩展 提供了针对多字节字符串的函数,能够帮助处理php多字节编码 5.Tokenizer PHP扩展 php代码片段解析三.安装 1.composer安装 composer create-project laravel/laravel your-project-name --prefer-dis

【干货】Laravel --Validate (表单验证) 使用实例

前言 : Laravel 提供了多种方法来验证应用输入数据.默认情况下,Laravel 的控制器基类使用ValidatesRequests trait,该trait提供了便利的方法通过各种功能强大的验证规则来验证输入的 HTTP 请求.要掌握 Laravel 强大的验证特性,让我们先看一个完整的验证表单并返回错误信息给用户的例子. 在这之前如果您是首次接触 Laravel 而且并不知道路由如何跳转到指定的控制器 可以查看博主的Restfulapi或者Laravel官网对路由的介绍,在这里就不做介