python mysql 阿里云服务器部署
时间: 2025-01-06 17:35:13 浏览: 48
### 如何在阿里云服务器上部署Python与MySQL的应用
#### 准备工作
确保已经安装好所需的软件环境,包括 Python 和 MySQL。对于 Python 版本管理,可以创建软链接以便全局调用特定版本的 Python 解释器[^2]。
```bash
$ sudo ln -s /usr/local/python3/bin/python3 /usr/bin/python
$ python -V
```
#### 安装依赖包
更新本地包索引以避免后续可能出现的 `404 Not Found` 错误:
```bash
sudo apt-get update
```
#### 设置MySQL服务
为了使外部能够访问 MySQL 数据库,在完成基本安装之后需调整其绑定地址配置以及开放必要的防火墙端口。具体操作如下:
- 修改 `/etc/mysql/mysql.conf.d/mysqld.cnf` 文件中的 bind-address 参数,将其注释掉或更改为服务器公网 IP 地址[^3]。
```ini
#bind-address = 127.0.0.1
```
- 开启安全组内的相应端口号(如默认的 3306),这一步骤通常是在阿里云控制台的安全组设置页面完成[^1]。
- 授权 root 用户或其他指定账户可以从任意主机连接至数据库实例,并设定强密码策略来保障安全性:
```sql
USE mysql;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'YourStrongPassword!';
FLUSH PRIVILEGES;
EXIT;
```
- 对于某些情况下的旧版认证插件不兼容问题,可以通过更改用户的身份验证方式解决[^5]:
```sql
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'YourNewPassword';
```
最后记得重启 MySQL 服务让改动生效:
```bash
net stop mysql57 && net start mysql57
```
#### 构建Python应用程序并与MySQL集成
编写 Django 或 Flask 等 Web 框架驱动的应用程序时,可通过 SQLAlchemy、PyMySQL 库实现同 MySQL 的交互功能。下面是一个简单的例子展示如何利用 PyMySQL 创建表结构并插入数据记录:
```python
import pymysql.cursors
connection = pymysql.connect(
host='your_server_ip',
port=3306,
user='root', # 使用之前授权过的用户名
password='pwd', # 填写对应的密码
database='testdb'# 新建立的数据集名称
)
try:
with connection.cursor() as cursor:
sql_create_table = """
CREATE TABLE IF NOT EXISTS users (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(50),
age TINYINT UNSIGNED);
"""
cursor.execute(sql_create_table)
insert_query = "INSERT INTO users (name, age) VALUES (%s,%s)"
data_to_insert = ('Alice', 28),('Bob', 24)
cursor.executemany(insert_query,data_to_insert)
finally:
connection.commit()
connection.close()
```
阅读全文
相关推荐
















