將 MySQL 安裝在 Docker 中,並使用 Golang 操作 MySQL 的指南
將 MySQL 安裝在 Docker 中,並使用 Golang 操作 MySQL 的指南。
步驟 1:在 Docker 中安裝 MySQL
1. 建立 docker-compose.yml 文件
2. 啟動 MySQL
執行以下命令啟動 MySQL 容器:
3. 驗證 MySQL 啟動
連線到 MySQL:
輸入密碼(rootpassword),即可進入 MySQL。
步驟 2:在 Golang 中操作 MySQL
1. 安裝 MySQL 的 Golang 驅動
使用 Go 的官方 MySQL 驅動 github.com/go-sql-driver/mysql:
2. 建立 Golang 程式
以下是一個完整的範例,包括連線、插入資料、查詢資料等操作。
步驟 3:執行程式
1. 啟動 MySQL
確保 MySQL 容器已啟動:
2. 執行 Go 程式
執行範例程式:
程式解說
連線到 MySQL
sql.Open(driverName, dataSourceName):使用 MySQL 驅動建立連線。dsn的格式為:範例:testuser:testpassword@tcp(127.0.0.1:3306)/testdb
測試連線
db.Ping():測試連線是否可用。
建立資料表
db.Exec(sql):執行 SQL 語句。
插入資料
- 使用帶有參數的 SQL 語句避免 SQL Injection。
查詢資料
db.Query(sql):執行查詢語句。rows.Scan():將結果掃描到變數中。
關閉連線
- 使用
defer db.Close()確保程式結束時關閉資料庫連線。
- 使用
常見問題排除
無法連線到 MySQL
- 確保 Docker 容器正確啟動,並檢查
docker ps是否有 MySQL 容器運行。 - 確保 MySQL 開放了
3306埠,並且dsn配置正確。
- 確保 Docker 容器正確啟動,並檢查
SQL 語句錯誤
- 檢查 SQL 語句是否正確,例如資料表名稱、字段名稱。
權限問題
- 確保在
docker-compose.yml中定義的用戶和密碼正確。
- 確保在
留言
張貼留言