<Ruby on Rails エラー編> PostgreSQLに接続できなかった時の対処法
エラー詳細
create db:createを実行しようとするとエラーが出た。
could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/tmp/.s.PGSQL.5432"? Couldn't create 'アプリ名_development' database. Please check your configuration. rails aborted! ActiveRecord::ConnectionNotEstablished: could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/tmp/.s.PGSQL.5432"? /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/connection_adapters/postgresql_adapter.rb:83:in `rescue in new_client' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/connection_adapters/postgresql_adapter.rb:77:in `new_client' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/connection_adapters/postgresql_adapter.rb:37:in `postgresql_connection' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:882:in `public_send' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:882:in `new_connection' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:926:in `checkout_new_connection' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:905:in `try_to_checkout_new_connection' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:866:in `acquire_connection' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:588:in `checkout' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:428:in `connection' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:1128:in `retrieve_connection' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/connection_handling.rb:327:in `retrieve_connection' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/connection_handling.rb:283:in `connection' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/tasks/postgresql_database_tasks.rb:12:in `connection' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/tasks/postgresql_database_tasks.rb:26:in `create' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/tasks/database_tasks.rb:133:in `create' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/tasks/database_tasks.rb:193:in `block in create_current' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/tasks/database_tasks.rb:506:in `block (2 levels) in each_current_configuration' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/tasks/database_tasks.rb:503:in `each' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/tasks/database_tasks.rb:503:in `block in each_current_configuration' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/tasks/database_tasks.rb:502:in `each' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/tasks/database_tasks.rb:502:in `each_current_configuration' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/tasks/database_tasks.rb:193:in `create_current' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/railties/databases.rake:45:in `block (2 levels) in <main>' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/task.rb:281:in `block in execute' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/task.rb:281:in `each' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/task.rb:281:in `execute' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/task.rb:219:in `block in invoke_with_call_chain' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/task.rb:199:in `invoke_with_call_chain' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/task.rb:188:in `invoke' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/application.rb:160:in `invoke_task' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/application.rb:116:in `block (2 levels) in top_level' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/application.rb:116:in `each' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/application.rb:116:in `block in top_level' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/application.rb:125:in `run_with_threads' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/application.rb:110:in `top_level' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/railties-6.1.3.2/lib/rails/commands/rake/rake_command.rb:24:in `block (2 levels) in perform' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/application.rb:186:in `standard_exception_handling' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/railties-6.1.3.2/lib/rails/commands/rake/rake_command.rb:24:in `block in perform' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/rake_module.rb:59:in `with_application' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/railties-6.1.3.2/lib/rails/commands/rake/rake_command.rb:18:in `perform' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/railties-6.1.3.2/lib/rails/command.rb:52:in `invoke' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/railties-6.1.3.2/lib/rails/commands.rb:18:in `<main>' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.7.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.7.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.7.5/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.7.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require_with_bootsnap_lfi' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.7.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:31:in `require' /Users/user_name/workspace/runteq/PF/アプリ名/bin/rails:5:in `<top (required)>' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/lib/spring/client/rails.rb:28:in `load' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/lib/spring/client/rails.rb:28:in `call' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/lib/spring/client/command.rb:7:in `call' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/lib/spring/client.rb:30:in `run' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/bin/spring:49:in `<top (required)>' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/lib/spring/binstub.rb:11:in `load' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/lib/spring/binstub.rb:11:in `<top (required)>' /Users/user_name/workspace/runteq/PF/アプリ名/bin/spring:10:in `block in <top (required)>' /Users/user_name/workspace/runteq/PF/アプリ名/bin/spring:7:in `tap' /Users/user_name/workspace/runteq/PF/アプリ名/bin/spring:7:in `<top (required)>' Caused by: PG::ConnectionBad: could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/tmp/.s.PGSQL.5432"? /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/pg-1.2.3/lib/pg.rb:58:in `initialize' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/pg-1.2.3/lib/pg.rb:58:in `new' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/pg-1.2.3/lib/pg.rb:58:in `connect' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/connection_adapters/postgresql_adapter.rb:78:in `new_client' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/connection_adapters/postgresql_adapter.rb:37:in `postgresql_connection' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:882:in `public_send' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:882:in `new_connection' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:926:in `checkout_new_connection' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:905:in `try_to_checkout_new_connection' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:866:in `acquire_connection' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:588:in `checkout' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:428:in `connection' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:1128:in `retrieve_connection' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/connection_handling.rb:327:in `retrieve_connection' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/connection_handling.rb:283:in `connection' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/tasks/postgresql_database_tasks.rb:12:in `connection' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/tasks/postgresql_database_tasks.rb:26:in `create' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/tasks/database_tasks.rb:133:in `create' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/tasks/database_tasks.rb:193:in `block in create_current' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/tasks/database_tasks.rb:506:in `block (2 levels) in each_current_configuration' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/tasks/database_tasks.rb:503:in `each' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/tasks/database_tasks.rb:503:in `block in each_current_configuration' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/tasks/database_tasks.rb:502:in `each' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/tasks/database_tasks.rb:502:in `each_current_configuration' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/tasks/database_tasks.rb:193:in `create_current' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/activerecord-6.1.3.2/lib/active_record/railties/databases.rake:45:in `block (2 levels) in <main>' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/task.rb:281:in `block in execute' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/task.rb:281:in `each' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/task.rb:281:in `execute' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/task.rb:219:in `block in invoke_with_call_chain' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/task.rb:199:in `invoke_with_call_chain' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/task.rb:188:in `invoke' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/application.rb:160:in `invoke_task' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/application.rb:116:in `block (2 levels) in top_level' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/application.rb:116:in `each' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/application.rb:116:in `block in top_level' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/application.rb:125:in `run_with_threads' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/application.rb:110:in `top_level' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/railties-6.1.3.2/lib/rails/commands/rake/rake_command.rb:24:in `block (2 levels) in perform' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/application.rb:186:in `standard_exception_handling' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/railties-6.1.3.2/lib/rails/commands/rake/rake_command.rb:24:in `block in perform' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/rake-13.0.3/lib/rake/rake_module.rb:59:in `with_application' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/railties-6.1.3.2/lib/rails/commands/rake/rake_command.rb:18:in `perform' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/railties-6.1.3.2/lib/rails/command.rb:52:in `invoke' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/railties-6.1.3.2/lib/rails/commands.rb:18:in `<main>' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.7.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.7.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.7.5/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.7.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require_with_bootsnap_lfi' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.7.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:31:in `require' /Users/user_name/workspace/runteq/PF/アプリ名/bin/rails:5:in `<top (required)>' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/lib/spring/client/rails.rb:28:in `load' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/lib/spring/client/rails.rb:28:in `call' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/lib/spring/client/command.rb:7:in `call' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/lib/spring/client.rb:30:in `run' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/bin/spring:49:in `<top (required)>' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/lib/spring/binstub.rb:11:in `load' /Users/user_name/workspace/runteq/PF/アプリ名/vendor/bundle/ruby/2.6.0/gems/spring-2.1.1/lib/spring/binstub.rb:11:in `<top (required)>' /Users/user_name/workspace/runteq/PF/アプリ名/bin/spring:10:in `block in <top (required)>' /Users/user_name/workspace/runteq/PF/アプリ名/bin/spring:7:in `tap' /Users/user_name/workspace/runteq/PF/アプリ名/bin/spring:7:in `<top (required)>' Tasks: TOP => db:create (See full trace by running task with --trace)
やったこと
まず、postgreSQLが動作しているかを確認する。
$ brew services list mysql@5.7 stopped postgresql error user_name /Users/user_name/Library/LaunchAgents/homebrew.mxcl.postgresql.plist
エラーが発生していて、起動できていないことが確認できた。
一応upgradeを一度して、改めてパスを通した。
$ brew upgrade postgresql $ echo 'export PATH="/usr/local/opt/icu4c/bin:$PATH"' >> ~/.zshrc $ source ~/.zshrc
upgradeした時にpostgresqlの起動方法が表示されているので、
To have launchd start postgresql now and restart at login: brew services start postgresql Or, if you don't want/need a background service you can just run: pg_ctl -D /usr/local/var/postgres start
のうち、
$ pg_ctl -D /usr/local/var/postgres start
起動を実行した。
waiting for server to start....2021-05-13 00:13:14.089 JST [24927] LOG: starting PostgreSQL 13.2 on x86_64-apple-darwin20.3.0, compiled by Apple clang version 12.0.0 (clang-1200.0.32.29), 64-bit 2021-05-13 00:13:14.091 JST [24927] LOG: listening on IPv4 address "127.0.0.1", port 5432 2021-05-13 00:13:14.091 JST [24927] LOG: listening on IPv6 address "::1", port 5432 2021-05-13 00:13:14.107 JST [24927] FATAL: could not create lock file "/tmp/.s.PGSQL.5432.lock": Permission denied 2021-05-13 00:13:14.109 JST [24927] LOG: database system is shut down stopped waiting pg_ctl: could not start server Examine the log output.
すると上記のような表示が出力され、tmpディレクトリにpermission deniedが発生していることがわかった。
そのため、以下のコマンドで許可を与えた。
$ sudo chmod 1777 /tmp
そしてもう一度
$ pg_ctl -D /usr/local/var/postgres start
を実行した。
すると以下のような表示が出た。
pg_ctl: another server might be running; trying to start server anyway waiting for server to start....2021-05-13 00:17:46.861 JST [25470] FATAL: lock file "postmaster.pid" already exists 2021-05-13 00:17:46.861 JST [25470] HINT: Is another postmaster (PID 25460) running in data directory "/usr/local/var/postgres"? stopped waiting pg_ctl: could not start server Examine the log output.
今度はlock file "postmaster.pid" already existsという表示が出たのでrmした。
$ rm /usr/local/var/postgres/postmaster.pid
brew services listで動作確認をまた行うと、
Name Status User Plist mysql@5.7 stopped postgresql started user_name /Users/user_name/Library/LaunchAgents/homebrew.mxcl.postgresql.plist
で動作確認ができ、rails db:createも実行できるようになった。