Skip to content

Instantly share code, notes, and snippets.

@AniTexs
Created July 22, 2025 18:01
Show Gist options
  • Select an option

  • Save AniTexs/10ce4272a96763c53c4e46bfbd91c49c to your computer and use it in GitHub Desktop.

Select an option

Save AniTexs/10ce4272a96763c53c4e46bfbd91c49c to your computer and use it in GitHub Desktop.
OpenAI Codex Laravel MySQL Setup
#!/usr/bin/env bash
DB_DATABASE="${DB_DATABASE:-mydb}"
DB_USERNAME="${DB_USERNAME:-myuser}"
DB_PASSWORD="${DB_PASSWORD:-mypassword}"
export DB_CONNECTION=mysql
export DB_HOST=127.0.0.1
export DB_PORT=3306
export DB_DATABASE DB_USERNAME DB_PASSWORD
apt-get install -y mysql-client mysql-common mysql-server-core-8.0
MYSQL_DATADIR="/tmp/mysql-data"; MYSQL_SOCKET="/tmp/mysql.sock"
mkdir -p "$MYSQL_DATADIR"
mysqld --initialize-insecure --datadir="$MYSQL_DATADIR"
mkdir -p /var/lib/mysql-files
nohup mysqld --user=root --datadir="$MYSQL_DATADIR" --socket="$MYSQL_SOCKET" \
> /tmp/mysql.log 2>&1 &
printf "Waiting for MySQL"; for _ in {30..0}; do
if mysqladmin --socket="$MYSQL_SOCKET" ping --silent 2>/dev/null; then
echo -e "\r✅ MySQL ready "; break; fi
printf "."; sleep 1; done
mysqladmin --socket="$MYSQL_SOCKET" ping --silent >/dev/null || { tail -n 50 /tmp/mysql.log; exit 1; }
mysql -u root --socket="$MYSQL_SOCKET" <<SQL
CREATE DATABASE IF NOT EXISTS \`$DB_DATABASE\`;
CREATE USER IF NOT EXISTS '$DB_USERNAME'@'%' IDENTIFIED BY '$DB_PASSWORD';
GRANT ALL PRIVILEGES ON \`$DB_DATABASE\`.* TO '$DB_USERNAME'@'%';
FLUSH PRIVILEGES;
SQL
mysql --version
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment