For the complete documentation index, see llms.txt. This page is also available as Markdown.

使用MySQL

遠端端口映射

使本地可以直接用 localhost 連線到遠端 MySQL (以下為 AWS RDS 範例)

通過一台跳板機的方式連線,前提是該台跳板機記得要與 AWS RDS 設定好 security group,讓該台跳板機已經可以連線到 RDS。

ssh -i "~/downloads/test.pem" -L 3306:test-database-1.cgkuzsy.ap-southeast-1.rds.amazonaws.com:3306 ubuntu@ec2-11-111-222-222.ap-southeast-1.compute.amazonaws.com

新增 DB 使用者

新增後給予用戶權限

例如 GRANT SELECT, GRANT UPDATE, GRANT INSERT, GRANT DELETE 等等

CREATE USER 'newusername'@'localhost' IDENTIFIED BY 'password';
GRANT SELECT ON yourdatabase.* TO 'newusername'@'localhost';

Docker 執行 MySQL

stack.yml

# Use root/example as user/password credentials
version: '3.1'

services:

  db:
    image: mysql
    command: --default-authentication-plugin=mysql_native_password
    restart: always
    ports:
      - 3306:3306
    volumes: 
      - "./dbdata:/var/lib/mysql"  
    environment:
      MYSQL_ROOT_PASSWORD: example

  adminer:
    image: adminer
    restart: always
    ports:
      - 8080:8080

之後輸入 docker-compose -f stack.yml up

然後可進入 localhost:8080 查看 adminer 視覺化 GUI 操作資料庫

帳號為 root,密碼為example

讀入範例資料

先在剛才外面 git clone https://github.com/datacharmer/test_db

記得看 yaml 的 volumn 位置

然後進到 docker 執行 sql import

之後回到 adminer 網頁,點選重新載入。即可看到多了 employees 資料庫

使用遠端 MYSQL 免費服務

臨時免費信箱:http://www.yopmail.com/zh/

測試用免費mysql:https://www.db4free.net/signup.php (預設一個資料庫,不可再增加或修改)

於Linux安裝的MySQL

一開始預設只有local可以存取到本地資料夾

停止

開啟

phpmyadmin中的使用者即為mysql的使用者所以更改後兩者都會變,安裝phpmyadmin套件可參考本書GCE章節。

如在terminal輸入mysql後告知沒有權限,可輸入以下

Docker mysql

安裝

進入docker

進入 mysql cli

從外面連入 docker 進入 mysql shell

不過這時會收到警告 mysql: [Warning] Using a password on the command line interface can be insecure.

所以可以到 `/etc/mysql/my.cnf` 設置使用者

使用 docker-compose 搭配 GUI(adminer)

帳號為 root 密碼為 example

執行 SQL 檔案

-u -p 後面接的是帳號和密碼

從 Dump 檔案 Restore DB

在本地端連線 DB (通常會是在本地建立 tunnel 使本地 3306 映射到遠端 3306 port)

Last updated