Я новичок в использовании AWS-RDS-mysql, теперь у меня проблема при подключении этой базы данных
Здесь у меня есть два способа подключиться к моему AWS-RDS-mysql: один - использовать пакет boto3, а другой - пакет pymysql.
Для boto3 требуются четыре параметра, это:
1) type='rds',
2) region,
3) aws_access_key_id
4) aws_secret_access_key
Я использую следующую функцию:
boto3.client(type, region, aws_access_key_id=key_id, aws_secret_access_key=access_key)
Для pymysql мне нужно 5 параметров, это:
1) host = "databaseinstancename.cxxxxxxxxxx.ca-central-1.rds.amazonaws.com"
2) port = 3306
3) dbname = "xxx"
4) user = "admin"
5) password = "ssssss"
Я использую следующий метод:
pymysql.connect(host, user=user, port=port, passwd=password, db=dbname)
Все они могут успешно подключиться к базе данных из моего pycharm.
У меня вопрос
1) в чем разница между первым методом (с использованием boto3) и вторым (с использованием pymysql)? Должна быть какая-то разница, потому что я предоставляю два разных типа информации для связи.
2) Когда я использую jupyter notebook в AWS sagemaker для редактирования кода python3, чтобы попытаться подключиться к базе данных, я обнаружил, что только первый метод (с использованием boto3) может работать, второй метод (с использованием pymysql) не может успешно подключиться с ошибкой, говорящей, что "тайм-аут". Почему это происходит, когда один метод может быть доступен базе данных, но другой не работает?