【发布时间】:2022-08-03 18:35:34
【问题描述】:
我正在使用 laravel 框架和 firebase-database,我在这两者之间建立了连接,它工作正常,我想使用 eloquent 模型来处理我正在使用这个包的数据
https://github.com/pieter365/laravel-sync-firebase
它现在已正确安装,我可以使用包中提到的模型中的特征,但是当我执行php artisan migrate 命令时,它会引发以下错误,您能帮我解决这个错误吗
Illuminate\\Database\\QueryException
SQLSTATE[HY000] [1045] Access denied for user \'forge\'@\'localhost\' (using password: NO) (SQL: select * from information_schema.tables where table_schema = forge and table_name = migrations and table_type = \'BASE TABLE\')
at vendor/laravel/framework/src/Illuminate/Database/Connection.php:712
708▕ // If an exception occurs when attempting to run a query, we\'ll format the error
709▕ // message to include the bindings with SQL, which will make this exception a
710▕ // lot more helpful to the developer instead of just the database\'s errors.
711▕ catch (Exception $e) {
➜ 712▕ throw new QueryException(
713▕ $query, $this->prepareBindings($bindings), $e
714▕ );
715▕ }
716▕ }
+33 vendor frames
34 artisan:37
Illuminate\\Foundation\\Console\\Kernel::handle()
.env
FIREBASE_CREDENTIALS=/storage/app/firebase/test-7a4b2-firebase-adminsdk-tm68z-1114d30bef.json
FIREBASE_DATABASE_URL= <my firebase db url>
数据库.php
<?php
use Illuminate\\Support\\Str;
return [
/*
|--------------------------------------------------------------------------
| Default Database Connection Name
|--------------------------------------------------------------------------
|
| Here you may specify which of the database connections below you wish
| to use as your default connection for all database work. Of course
| you may use many connections at once using the Database library.
|
*/
\'default\' => env(\'DB_CONNECTION\', \'mysql\'),
/*
|--------------------------------------------------------------------------
| Database Connections
|--------------------------------------------------------------------------
|
| Here are each of the database connections setup for your application.
| Of course, examples of configuring each database platform that is
| supported by Laravel is shown below to make development simple.
|
|
| All database work in Laravel is done through the PHP PDO facilities
| so make sure you have the driver for your particular database of
| choice installed on your machine before you begin development.
|
*/
\'connections\' => [
\'sqlite\' => [
\'driver\' => \'sqlite\',
\'url\' => env(\'DATABASE_URL\'),
\'database\' => env(\'DB_DATABASE\', database_path(\'database.sqlite\')),
\'prefix\' => \'\',
\'foreign_key_constraints\' => env(\'DB_FOREIGN_KEYS\', true),
],
\'mysql\' => [
\'driver\' => \'mysql\',
\'url\' => env(\'DATABASE_URL\'),
\'host\' => env(\'DB_HOST\', \'127.0.0.1\'),
\'port\' => env(\'DB_PORT\', \'3306\'),
\'database\' => env(\'DB_DATABASE\', \'forge\'),
\'username\' => env(\'DB_USERNAME\', \'forge\'),
\'password\' => env(\'DB_PASSWORD\', \'\'),
\'unix_socket\' => env(\'DB_SOCKET\', \'\'),
\'charset\' => \'utf8mb4\',
\'collation\' => \'utf8mb4_unicode_ci\',
\'prefix\' => \'\',
\'prefix_indexes\' => true,
\'strict\' => true,
\'engine\' => null,
\'options\' => extension_loaded(\'pdo_mysql\') ? array_filter([
PDO::MYSQL_ATTR_SSL_CA => env(\'MYSQL_ATTR_SSL_CA\'),
]) : [],
],
\'pgsql\' => [
\'driver\' => \'pgsql\',
\'url\' => env(\'DATABASE_URL\'),
\'host\' => env(\'DB_HOST\', \'127.0.0.1\'),
\'port\' => env(\'DB_PORT\', \'5432\'),
\'database\' => env(\'DB_DATABASE\', \'forge\'),
\'username\' => env(\'DB_USERNAME\', \'forge\'),
\'password\' => env(\'DB_PASSWORD\', \'\'),
\'charset\' => \'utf8\',
\'prefix\' => \'\',
\'prefix_indexes\' => true,
\'schema\' => \'public\',
\'sslmode\' => \'prefer\',
],
\'sqlsrv\' => [
\'driver\' => \'sqlsrv\',
\'url\' => env(\'DATABASE_URL\'),
\'host\' => env(\'DB_HOST\', \'localhost\'),
\'port\' => env(\'DB_PORT\', \'1433\'),
\'database\' => env(\'DB_DATABASE\', \'forge\'),
\'username\' => env(\'DB_USERNAME\', \'forge\'),
\'password\' => env(\'DB_PASSWORD\', \'\'),
\'charset\' => \'utf8\',
\'prefix\' => \'\',
\'prefix_indexes\' => true,
],
],
/*
|--------------------------------------------------------------------------
| Migration Repository Table
|--------------------------------------------------------------------------
|
| This table keeps track of all the migrations that have already run for
| your application. Using this information, we can determine which of
| the migrations on disk haven\'t actually been run in the database.
|
*/
\'migrations\' => \'migrations\',
/*
|--------------------------------------------------------------------------
| Redis Databases
|--------------------------------------------------------------------------
|
| Redis is an open source, fast, and advanced key-value store that also
| provides a richer body of commands than a typical key-value system
| such as APC or Memcached. Laravel makes it easy to dig right in.
|
*/
\'redis\' => [
\'client\' => env(\'REDIS_CLIENT\', \'phpredis\'),
\'options\' => [
\'cluster\' => env(\'REDIS_CLUSTER\', \'redis\'),
\'prefix\' => env(\'REDIS_PREFIX\', Str::slug(env(\'APP_NAME\', \'laravel\'), \'_\').\'_database_\'),
],
\'default\' => [
\'url\' => env(\'REDIS_URL\'),
\'host\' => env(\'REDIS_HOST\', \'127.0.0.1\'),
\'password\' => env(\'REDIS_PASSWORD\', null),
\'port\' => env(\'REDIS_PORT\', \'6379\'),
\'database\' => env(\'REDIS_DB\', \'0\'),
],
\'cache\' => [
\'url\' => env(\'REDIS_URL\'),
\'host\' => env(\'REDIS_HOST\', \'127.0.0.1\'),
\'password\' => env(\'REDIS_PASSWORD\', null),
\'port\' => env(\'REDIS_PORT\', \'6379\'),
\'database\' => env(\'REDIS_CACHE_DB\', \'1\'),
],
],
];
标签: laravel firebase-realtime-database eloquent laravel-8 laravel-datatables