|
在Linux系统下搭建H5开发环境时,数据库配置是关键环节之一。无论是本地开发测试还是生产环境部署,合理选择和配置数据库能显著提升项目效率。本文以MySQL为例,介绍从安装到与H5项目集成的完整流程,适用于CentOS/Ubuntu等主流发行版。
一、数据库安装与基础配置
对于CentOS用户,可通过Yum仓库快速安装:
```bash sudo yum install mysql-server mysql-devel sudo systemctl start mysqld sudo mysql_secure_installation ```
Ubuntu系统则使用APT:
```bash sudo apt update sudo apt install mysql-server sudo mysql_secure_installation ```
安装完成后,运行`mysql -u root -p`验证登录。建议立即修改默认密码并创建专用用户:

AI绘图结果,仅供参考 ```sql ALTER USER 'root'@'localhost' IDENTIFIED BY '新强密码'; CREATE USER 'app_user'@'localhost' IDENTIFIED BY '项目密码'; GRANT ALL PRIVILEGES ON h5_db. TO 'app_user'@'localhost'; FLUSH PRIVILEGES; ```
二、数据库初始化与表结构创建
使用文本编辑器创建`init.sql`文件,定义项目所需表结构:
```sql CREATE DATABASE h5_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; USE h5_db; CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(50) NOT NULL UNIQUE, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); -- 其他表定义... ```
执行初始化脚本:
```bash mysql -u app_user -p h5_db < init.sql ```
三、H5项目集成配置
以Node.js+Express项目为例,安装MySQL驱动:
```bash npm install mysql2 ```
在`config/db.js`中配置连接参数:
```javascript const mysql = require('mysql2/promise'); const pool = mysql.createPool({ host: 'localhost', user: 'app_user', password: '项目密码', database: 'h5_db', waitForConnections: true, connectionLimit: 10 }); module.exports = pool; ```
前端通过AJax调用API时,后端接口示例:
```javascript app.get('/api/users', async (req, res) => { const [rows] = await pool.query('SELECT FROM users'); res.json(rows); }); ```
四、性能优化与安全建议
1. 连接池配置:根据并发量调整`connectionLimit`(通常5-20)
2. 安全防护:
- 禁用root远程登录
- 使用防火墙限制3306端口访问
```bash sudo ufw allow from 开发机IP to any port 3306 ```
3. 定期备份:
```bash mysqldump -u app_user -p h5_db > backup_$(date +%F).sql ```
4. 查询优化:为常用查询字段添加索引
五、快速调试技巧
1. 使用MySQL Workbench等GUI工具可视化操作数据库
2. 开启通用查询日志(开发环境):
```sql SET GLOBAL general_log = 'ON'; SET GLOBAL log_output = 'TABLE'; ```
3. 错误排查:
- 连接失败时检查`/var/log/mysqld.log`(CentOS)或`/var/log/mysql/error.log`(Ubuntu)
- 使用`SHOW STATUS LIKE 'Threads_connected'`监控连接数
完成上述配置后,启动H5项目即可自动连接数据库。建议通过Docker部署数据库以实现环境隔离,对于复杂项目可考虑使用Sequelize等ORM工具简化操作。实际开发中,建议将数据库配置移至环境变量文件(如`.env`),避免硬编码敏感信息。 (编辑:站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|