質問編集履歴

3

誤字修正

2021/05/05 08:12

投稿

uni..
uni..

スコア79

test CHANGED
File without changes
test CHANGED
@@ -350,7 +350,7 @@
350
350
 
351
351
  DB_CONNECTION=mysql
352
352
 
353
- DB_DATABASE=umai_mon_utf8
353
+ DB_DATABASE=test_DB
354
354
 
355
355
  DB_HOST=localhost
356
356
 

2

いただいたコメントを元に情報追記いたしました

2021/05/05 08:12

投稿

uni..
uni..

スコア79

test CHANGED
File without changes
test CHANGED
@@ -158,7 +158,7 @@
158
158
 
159
159
  ======================
160
160
 
161
- 追記
161
+ 追記
162
162
 
163
163
 
164
164
 
@@ -255,3 +255,159 @@
255
255
 
256
256
 
257
257
  そもそもrootで接続していないのでしょうか。。
258
+
259
+
260
+
261
+ ======================
262
+
263
+ 追記2
264
+
265
+
266
+
267
+ コメントいただき更に検証いたしました。
268
+
269
+
270
+
271
+ ```
272
+
273
+ laravel .env を修正
274
+
275
+
276
+
277
+ #DB_HOST=127.0.0.1
278
+
279
+ DB_HOST=localhost
280
+
281
+ ```
282
+
283
+
284
+
285
+ ```ここに言語を入力
286
+
287
+ php artisan config:clear
288
+
289
+ php artisan cache:clear
290
+
291
+ ```
292
+
293
+
294
+
295
+ ここまででエラーは変わらず
296
+
297
+
298
+
299
+ mysqlで新しくユーザーを追加して、 laravelの.envを変更してみました。
300
+
301
+
302
+
303
+ ```ここに言語を入力
304
+
305
+ mysql> SELECT user, host FROM user;
306
+
307
+ +---------------+-----------+
308
+
309
+ | user | host |
310
+
311
+ +---------------+-----------+
312
+
313
+ | mysql.session | localhost |
314
+
315
+ | mysql.sys | localhost |
316
+
317
+ | root | localhost |
318
+
319
+ | shoku | localhost |
320
+
321
+ +---------------+-----------+
322
+
323
+
324
+
325
+ ↑↑ 新しい shoku というユーザーを追加
326
+
327
+ ```
328
+
329
+ 権限を付与
330
+
331
+
332
+
333
+ ```ここに言語を入力
334
+
335
+ mysql> SHOW GRANTS FOR shoku@localhost \G
336
+
337
+ *************************** 1. row ***************************
338
+
339
+ Grants for shoku@localhost: GRANT ALL PRIVILEGES ON *.* TO 'shoku'@'localhost'
340
+
341
+ ```
342
+
343
+
344
+
345
+ 新しいユーザー情報を .envに反映
346
+
347
+
348
+
349
+ ```ここに言語を入力
350
+
351
+ DB_CONNECTION=mysql
352
+
353
+ DB_DATABASE=umai_mon_utf8
354
+
355
+ DB_HOST=localhost
356
+
357
+ DB_USERNAME=shoku
358
+
359
+ DB_PASSWORD=secret
360
+
361
+ ```
362
+
363
+ 再びキャッシュ削除
364
+
365
+
366
+
367
+ ```ここに言語を入力
368
+
369
+ php artisan config:clear
370
+
371
+ php artisan cache:clear
372
+
373
+ ```
374
+
375
+
376
+
377
+ 念のため sudo apachectl restart でapache再起動
378
+
379
+
380
+
381
+ ここでブラウザ確認をしても、やはり
382
+
383
+ ```ここに言語を入力
384
+
385
+ Access denied for user ''@'localhost' (using password: NO)
386
+
387
+ ```
388
+
389
+ となって、laravelの.envが反映されていないようです。。
390
+
391
+
392
+
393
+ my.cnfは昨日 mysql5.7をインストールした際に変更しており、以下のようになっております。
394
+
395
+ ```ここに言語を入力
396
+
397
+ hiro@Hiro apache2 % cat /usr/local/etc/my.cnf
398
+
399
+ # Default Homebrew MySQL server config
400
+
401
+ [mysqld]
402
+
403
+ # Only allow connections from localhost
404
+
405
+ bind-address = 127.0.0.1
406
+
407
+ default-time-zone = 'Asia/Tokyo'
408
+
409
+ sql_mode=NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
410
+
411
+
412
+
413
+ ```

1

コメントいただいた情報を追記しました

2021/05/05 08:00

投稿

uni..
uni..

スコア79

test CHANGED
File without changes
test CHANGED
@@ -153,3 +153,105 @@
153
153
  どなたか、お知恵をお借りできますでしょうか。
154
154
 
155
155
  何卒よろしくお願いいたします。
156
+
157
+
158
+
159
+ ======================
160
+
161
+ 追記
162
+
163
+
164
+
165
+ コメントいただいたファイルのパス・mysqlのユーザー権限を調べてみました。
166
+
167
+
168
+
169
+ mysql.sockへののパス
170
+
171
+ ```
172
+
173
+ mysql> status
174
+
175
+ --------------
176
+
177
+ mysql Ver 14.14 Distrib 5.7.34, for osx10.15 (x86_64) using EditLine wrapper
178
+
179
+
180
+
181
+ Current user: root@localhost
182
+
183
+ Server version: 5.7.34 Homebrew
184
+
185
+ Connection: Localhost via UNIX socket
186
+
187
+ UNIX socket: /tmp/mysql.sock
188
+
189
+ ```
190
+
191
+
192
+
193
+ ユーザー一覧
194
+
195
+ ```ここに言語を入力
196
+
197
+ mysql> SELECT user, host FROM user;
198
+
199
+ +---------------+-----------+
200
+
201
+ | user | host |
202
+
203
+ +---------------+-----------+
204
+
205
+ | mysql.session | localhost |
206
+
207
+ | mysql.sys | localhost |
208
+
209
+ | root | localhost |
210
+
211
+ +---------------+-----------+
212
+
213
+ ```
214
+
215
+
216
+
217
+ rootユーザーの権限
218
+
219
+ ```ここに言語を入力
220
+
221
+ mysql> SHOW GRANTS for 'root'@'localhost';
222
+
223
+ +---------------------------------------------------------------------+
224
+
225
+ | Grants for root@localhost |
226
+
227
+ +---------------------------------------------------------------------+
228
+
229
+ | GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION |
230
+
231
+ | GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION |
232
+
233
+ +---------------------------------------------------------------------+
234
+
235
+ ```
236
+
237
+
238
+
239
+ 上記を確認しまして、
240
+
241
+ ・/tmp/mysql.sockのパスは合っている
242
+
243
+ ・rootユーザーの権限は問題ない
244
+
245
+
246
+
247
+ のかなと思いました。
248
+
249
+
250
+
251
+ ただ改めてエラー文を読むと、Access denied for user ''@'localhost' となっており、
252
+
253
+ @の前のrootが抜けていることに気がつきました。正しく接続されていれば、'root'@'localhost'となるはずですよね。。?
254
+
255
+
256
+
257
+ そもそもrootで接続していないのでしょうか。。