MySQL 多实例启动和关闭脚本

本文介绍了一个简单的启动和关闭MySQL多实例的脚本,包括start.sh和stop.sh,通过遍历指定端口范围来实现自动启动和关闭多个MySQL服务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

DB: 5.5.14

OS:CentOS 6.3

在MySQL多实例中,一个一个启动灰常麻烦,因此写个简单的启动和关闭脚本


启动脚本:start.sh

#!/bin/bash

for port in {3390..3396}

do

(/export/servers/mysql/bin/mysqld_safe --defaults-file=/export/servers/mysql/etc/my$port.cnf  ) &

done


关闭脚本:stop.sh

#!/bin/bash

for port in {3390..3396}

do

(/export/servers/mysql/bin/mysqladmin -uroot -p  -S /export/data/mysql/tmp/mysql$port.sock  shutdown) &

done

### JavaWeb 实现登录注册页面 #### Maven 的 JavaWeb 项目构建 为了创建一个完整的 JavaWeb 应用程序,可以使用 Maven 构建工具来管理依赖项并简化项目的结构化开发过程。通过 Maven 创建的项目通常会包含 `pom.xml` 文件,用于定义所需的库其他配置信息[^2]。 以下是基于 Maven 的 JavaWeb 项目基本目录结构: ``` my-webapp/ ├── src/main/java/ # 存放源代码文件 │ └── com/example/controller/ # 控制器类路径 ├── src/main/resources/ # 配置文件存储位置 └── pom.xml # Maven 配置文件 ``` 在 `pom.xml` 中添加必要的依赖项,例如 Servlet API 数据库驱动程序: ```xml <dependencies> <!-- Servlet API --> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>4.0.1</version> <scope>provided</scope> </dependency> <!-- MySQL Connector --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.26</version> </dependency> </dependencies> ``` --- #### Tomcat 容器部署 Tomcat 是一种流行的轻量级 Web 容器,支持运行 JavaServlet JSP 页面。要将应用程序部署到 Tomcat 上,需完成以下操作: 1. 将编译后的 WAR 文件放置于 `$TOMCAT_HOME/webapps/` 目录下。 2. 启动 Tomcat 并访问应用 URL (如 http://localhost:8080/my-app/) 来验证其正常工作状态。 --- #### MyBatis 数据库配置 MyBatis 提供了一种简便的方式来处理 SQL 查询并与关系型数据库交互。对于登录注册功能而言,可以通过它执行数据插入、查询等操作。 下面是一个典型的 MyBatis 配置示例 (`mybatis-config.xml`): ```xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <environments default="development"> <environment id="development"> <transactionManager type="JDBC"/> <dataSource type="POOLED"> <property name="driver" value="com.mysql.cj.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/userdb?useSSL=false&serverTimezone=UTC"/> <property name="username" value="root"/> <property name="password" value="password"/> </dataSource> </environment> </environments> <mappers> <mapper resource="UserMapper.xml"/> </mappers> </configuration> ``` 同时还需要编写对应的 Mapper 接口以及 XML 映射文件以描述具体的 SQL 操作逻辑。 --- #### 前端界面设计 前端部分主要由 HTML 表单构成,配合 CSS 进行样式美化即可满足需求。这里给出一个简单的注册表单实例作为参考: **zhucesu.jsp** ```jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>用户注册</title> <style> body { text-align: center; font-family: Arial, sans-serif; } form div { margin-bottom: 15px; } </style> </head> <body> <h2>新用户注册</h2> <form action="register" method="post"> <div><label for="username">用户名:</label><input type="text" id="username" name="username"></div> <div><label for="password">密  码:</label><input type="password" id="password" name="password"></div> <button type="submit">提交</button> </form> <p>${message}</p> <a href="login.jsp">已有账号?立即登录</a> </body> </html> ``` 上述代码片段展示了如何利用 JSP 技术动态生成网页内容,并允许服务器端脚本嵌入其中以便实现更复杂的功能[^3]。 --- #### 后端控制器实现 最后,在后端需要设置相应的处理器方法接收来自客户端的数据请求并对之作出响应。假设采用 Spring MVC 或者传统方式,则可能涉及如下代码段落之一: ##### 使用原生 Servlet 处理 POST 请求 ```java import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @WebServlet("/register") public class RegisterServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String username = request.getParameter("username"); String password = request.getParameter("password"); try { // 调用 DAO 层保存用户记录... UserDAO.insert(username, password); request.setAttribute("message", "恭喜您!账户已成功创建!"); request.getRequestDispatcher("success.jsp").forward(request, response); } catch (Exception e) { e.printStackTrace(); request.setAttribute("error", "发生错误:" + e.getMessage()); request.getRequestDispatcher("error.jsp").forward(request, response); } } } ``` 此段落说明了当接收到 HTTP POST 方法调用时该如何解析参数并将它们传递给业务层进一步加工处理[^1]。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值