2017-01-17 18 views
0

私は最初のLaravelプロジェクトに取り組んでいます。私はデータベースの移行を作成し、artisan migrateで実行しようとしています。移行は実行されておらず、コマンドは出力を返しません。artisan migrateコマンドは移行されず、出力は生成されません。

主な事実:

  • 私は、適切なファイルパスを持つ移行ファイルを作成するためにartisan make:migrationを使用。
  • 初めてコマンドを実行したときに、データベースに移行テーブルが作成されました。だから私はそれがデータベースに当たっていることを知っており、少なくとも何か正しいことをしています。
  • database/migrationsフォルダにファイルがない場合、私はNothing to migrateコマンドを取得します。
  • これらの2つのメッセージを超えて、私はコマンドから何も出力を受け取っていません。エラーはありません。さらに、データベースの移行テーブルにはレコードがありません。
  • artisan migrate --verboseも出力を返しません。
  • storage/logsのアクセス許可はdrwxrwxrwx.です。私はこのディレクトリの所有者です。
  • storage/logs/laravel.logには、移行に関連するものは含まれていません。

私は以下の最初の移行のためのコードを含めました。

この質問は、以前のユーザーが適切な命名規則を使用していなかった点でthis questionとは異なります。その質問には、移行プロセスに関する詳細な回答が含まれています。私は何の出力も得られていないので、役に立たない。私はこの質問を入力したので、SOによって提案された質問も見直しました。

おそらく、設定が間違っていますか?これらの移行を実行するには何が必要ですか?

2017_01_17_151638_user.php

<?php 

use Illuminate\Support\Facades\Schema; 
use Illuminate\Database\Schema\Blueprint; 
use Illuminate\Database\Migrations\Migration; 

// Create the classes associated with user management. 

class UserMigration extends Migration 
{ 
    public function up() 
    { 
     Schema::create('tblUser', function (Blueprint $table) { 
      $table->increments('id'); 
      $table->string('name'); 
      $table->string('email')->unique(); 
      $table->string('password'); 
      $table->rememberToken(); 
      $table->timestamps(); 
     }); 

     Schema::create('tblUserPasswordReset', function (Blueprint $table) { 
      $table->string('email')->index(); 
      $table->string('token')->index(); 
      $table->timestamp('create_date')->nullable(); 
     }); 
    } 

    public function down() 
    { 
     Schema::dropIfExists('tblUserPasswordReset'); 
     Schema::dropIfExists('tblUser'); 
    } 
} 
+0

を確認してください'/ storage/logs'フォルダは書き込み可能です。エラーが発生し、そこにログオンしようとしている可能性があります。また、開発環境によっては、正しく通信していない可能性があります。それを超えて、おそらくコマンドを実行している端末のスクリーンショットを含めてください。 –

答えて

0

ダブルチェックし、次の

  • 移行ファイルは、実際に作成されているdatabase/migrations
  • ダブルログ・ファイルを確認して、ディレクトリが書き込み可能である
  • database/migrationsフォルダのアクセス許可がtであることを確認してください彼はあなたの はlocalhost/phpmyadminのに行くことによって、あなたのサービスのApacheとMySQLの実行を確認するまず
  • Doublecheck laravel.logファイル
+0

移行ファイルは 'database/migrations'にあります。 'storage/logs'ディレクトリのアクセス権は' drwxrwxrwx 'です。 'laravel.log'ファイルには古いエントリがいくつかありますが、移行に関するものはありません。 –

0
  • をインストールlaravelが付属しているデフォルト。
  • 正しいファイルパス ディレクトリにあることを確認してください。
  • と書いてください。php artisan migrate
  • あなたのラーベルに行かない場合は、ここに私に知らせてください。 詳細
0

のためにログインしてみてください。composer dump-autoload

その後、再び

php artisan migrateを実行する可能性のある問題:https://stackoverflow.com/a/33974248/7377984

+0

効果なし。 'composer dump-autoload'は'自動ロードファイルの生成 'を報告しますが、 'php artisan migrate'ではまだ動作していません。 –

+0

'' php artisan clear-compiled''と '' composer dump-autoload''と '' php artisan optimize''と '' php artisan migrate'を試してください – Paras

2

を試し、その後

php artisan migrate:rollback 

を試してみてください

php artisan migrate 

Laravelは、移行を追跡しますが走ったので、あなたが前にそれを実行している場合、それは知っていて、文句を言わないあなたが戻ってそれをロールしない限り、再びそれを行うと私は私が戻ってそれらをロールするまで、このに走ったし、再び

を移行走りました
+0

効果なし。 'php artisan migrate:rollback'はロールバックするものは何もないと報告します。後で 'php artisan migrate'は何もしません。移行テーブルはまだ空です。 –

+0

make:migration create_thetable.php <-----このコマンドは何も出さないのでしょうか? これも行います:php artisan migrate:reset produce anything? – ATechGuy

+0

どちらのコマンドも何もしていません。 –

0

DatabaseSeeder.phpにマイグレーションを追加することは忘れないでください。このドキュメントCalling Additional Seedersを参照してください。 DatabaseSeeder内

は、これを追加します。

$this->call(UserMigration::class); 

を、それがお役に立てば幸いです。

0

記載されている解決策のどれもが変更されていないこの正確な問題がありました。私のためにこのケースで動作しますunmentioned解決策は、私はすべてのものを一掃していたし、最初から開始したことに、initの作曲を再度、すべてをインストールするのを忘れ

composer update --no-scripts 

ました。

0

マイグレーションがエラーなしで実行され、マイグレーションされないケースを再現できる唯一の方法は、接続名とともに設定でデータベーススキーマ名を指定しないことです。いずれにおいても.envファイル内

次の設定が価値があることを確認します。/config/database.php

DB_CONNECTION=master 
DB_DATABASE=my_databse_name 

または代わり:

'default' => env('DB_CONNECTION', 'master'), 

'connections' => [ 

     'master' => [ 
      'driver' => 'mysql', 
      'host' => env('DB_HOST', '127.0.0.1'), 
      'port' => env('DB_PORT', '3306'), 
      'database' => env('DB_DATABASE', 'my_databse_name'), 
      'username' => env('DB_USERNAME', 'root'), 
      'password' => env('DB_PASSWORD', ''), 
      'unix_socket' => env('DB_SOCKET', ''), 
      'charset' => 'utf8', 
      'collation' => 'utf8_unicode_ci', 
      'prefix' => 'cms_', 
      'strict' => true, 
      'engine' => null, 
     ], 
], 
関連する問題