# Panel Remote Database Setup

এই guide শুধু `panel`-এর নিজের Laravel database অন্য hosting-এর MySQL-এ connect করার জন্য।

এটা `other website manage` করার setup না।

## কী লাগবে

- Remote MySQL host
- Remote MySQL port
- Database name
- Database username
- Database password
- Remote MySQL access allow করা আছে কিনা

অনেক hosting provider-এ `Remote MySQL` বা `Database Access` section থেকে panel server-এর IP whitelist করতে হয়।

## `.env` এ কী বসাবেন

আপনার panel project-এর [.env](/C:/contol/.env:1) file-এ এই values দিন:

```env
APP_URL=https://panel.yourdomain.com

DB_CONNECTION=mysql
DB_HOST=your-remote-db-host
DB_PORT=3306
DB_DATABASE=your_database_name
DB_USERNAME=your_database_user
DB_PASSWORD=your_database_password
```

যদি port আলাদা হয়, `DB_PORT`-এ সেই port দিন।

## তারপর কোন command চালাবেন

```powershell
php artisan optimize:clear
php artisan migrate --seed
php artisan control-center:harness:provision
```

## verify করবেন কীভাবে

```powershell
php artisan about
php artisan migrate:status
```

`php artisan about` output-এ `Database .... mysql` দেখালে DB config load হয়েছে।

## সাধারণ সমস্যা

### `SQLSTATE[HY000] [2002] Connection refused`

এর মানে:

- `DB_HOST` ভুল
- port ভুল
- remote MySQL externally reachable না

### `Access denied for user`

এর মানে:

- username/password ভুল
- user ওই database-এ permission পায়নি

### `Can't connect because host is not allowed`

এর মানে:

- hosting panel-এ remote access whitelist করা নেই

## গুরুত্বপূর্ণ নোট

এই setup করলে শুধু `panel`-এর নিজের table/data remote DB-এ যাবে।

এতে অন্য hosting-এর Laravel website automatically manageable হবে না।  
ওটার জন্য নিচের `remote-agent-connection-setup.md` follow করতে হবে।
