Es gibt die folgenden Möglichkeiten, mit relationalen Datenbanken in AWS zu arbeiten.
Erstellen Sie AWS EC2 und legen Sie DB darauf
Verwenden Sie AWS RDS
--750 Stunden / Monat Nutzung der Datenbank db.t2.micro (zutreffende DB-Engine) --20 GB SSD-Datenbankspeicher (General Purpose) --20 GB Speicher für Datenbanksicherungen und DB-Snapshots
$ sudo apt install mysql-client-core-5.7
python
$ mysql -h RDS-Endpunkt-u Benutzer in RDS eingestellt-p In RDS festgelegtes Passwort
python
mysql> CREATE USER 'mysql'@'%';
Query OK, 0 rows affected (0.00 sec)
mysql> SET PASSWORD FOR 'mysql'@'%'='MyPassw0rd';
Query OK, 0 rows affected (0.00 sec)
mysql> CREATE DATABASE awsfree;
Query OK, 1 row affected (0.00 sec)
mysql> GRANT ALL ON awsfree.* TO 'mysql'@'%';
Query OK, 0 rows affected (0.00 sec)
mysql> CREATE TABLE staff (
id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT,
staff_name VARCHAR(255) NOT NULL
) ENGINE=InnoDB DEFAULT charset = utf8;
Query OK, 0 rows affected (0.02 sec)
mysql> INSERT INTO staff (staff_name) VALUES ('Taro Amami');
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO staff (staff_name) VALUES ('Hanako Amami');
Query OK, 1 row affected (0.00 sec)
mysql> SELECT * FROM staff;
+----+---------------+
| id | staff_name |
+----+---------------+
| 1 |Taro Amami|
| 2 |Hanako Amami|
+----+---------------+
2 rows in set (0.00 sec)
$ pip install pymysql
rds_config.py
rds_host = 'RDS-Endpunkt'
db_user = 'mysql'
db_password = 'MyPassw0rd'
db_name = 'awsfree'
rds_test.py
import pymysql
import rds_config as RDS
con = pymysql.connect(
host=RDS.rds_host,
user=RDS.db_user,
password=RDS.db_password,
db=RDS.db_name,
cursorclass=pymysql.cursors.DictCursor
)
try:
with con.cursor() as cur:
sql = 'SELECT * FROM staff'
cur.execute(sql)
result = cur.fetchall()
print(result)
except:
print('Error !!!!')
Mitarbeiter hinzugefügt
sql = 'INSERT INTO staff (staff_name) VALUES (%s)'
cur.execute(sql, ('Jiro Amami'))
con.commit()
Verbindungstest
$ python rds_test.py
Ausführungsergebnis
[{'id': 1, 'staff_name': 'Taro Amami'}, {'id': 2, 'staff_name': 'Hanako Amami'}]
--AWS RDS ist praktisch, da Sie mit Schaltflächen und Klicks eine Umgebung erstellen können.
Recommended Posts