In your command-line run the following commands:
brew doctor
brew update
-
In your command-line run the command:
brew install postgresql@14
-
Run the command:
ln -sfv /usr/local/opt/postgresql/*.plist ~/Library/LaunchAgents
-
Create two new aliases to start and stop your postgres server. They could look something like this:
alias pg_start="launchctl load ~/Library/LaunchAgents" alias pg_stop="launchctl unload ~/Library/LaunchAgents"
-
Run the alias you just created:
pg_start
. Use this comment to start your database service.- alternatively,
pg_stop
stops your database service.
- alternatively,
-
Run the command:
createdb `whoami`
-
Connect to your postgres with the command:
psql
-
brew reinstall readline
- ONLY IF NEEDED -
createuser -s postgres
- fixesrole "postgres" does not exist
-
Test with
psql
command$ psql psql (14.5 (Homebrew)) Type "help" for help. ibraheem=# exit
from the man ln
command
The ln utility creates a new directory entry (linked file) which has the same modes as the original file. It is useful for maintaining multiple copies of a file in many places at once without using up storage for the
copies''; instead, a link
points'' to the original copy. There are two types of links; hard links and symbolic links. How a link ``points'' to a file is one of the differences between a hard and symbolic link.
from the man launchctl
command
launchctl interfaces with launchd to manage and inspect daemons, angents and XPC services.
createdb <database_name>
createdb mydjangoproject_development
psql -U postgres -l
psql -U postgres -d <database_name>
psql -U postgres -d mydjangoproject_development
dropdb <database_name>
dropdb mydjangoproject_development
dropdb <database_name> && createdb <database_name>
dropdb mydjangoproject_development && createdb mydjangoproject_development
I also had the
Unload failed: 5: Input/output error
I was able to solve it and run it via brew services start from the following steps:This was my link command:
ln -sfv /usr/local/opt/postgresql/*.plist ~/Library/LaunchAgents
Which produced the following output:
/Users/yourusername/Library/LaunchAgents -> /usr/local/opt/postgresql/homebrew.mxcl.postgresql.plist
As per this stack post you can remove by removing the thing to the left of the arrow:
sudo rm /Users/yourusername/Library/LaunchAgents
I was then able to run
brew services start postgresql