计算机服务项里没有MySQL服务,无法设置开机自启动或者关闭自启动,的解决办法

计算机服务项里没有MySQL服务,无法设置开机自启动或者关闭自启动,的解决办法

    我的MySQL使用的是解压版的(不清楚适不适用于安装版,可以尝试),并且已配置好环境变量,但是发现每次使用MySQL数据库的时候都需要去解压后的文件夹里启动run.bat,然后MySQL数据库才可以使用,很麻烦,所以想,如果MySQL可以开机自启动就好了,每次再使用MySQL的时候就不需要再启动run.bat.直接可以 运行(win+R) ---> cmd  ---> mysql -u root -p 回车   --->输入密码,再回车,即可进入msyql 简便很多。

一、添加MySQL服务,并设置开机自启动

    进入 计算机服务项中(我的电脑 (右键)---->管理---->服务和应用程序---->查看有没有MySQL服务项),发现没有 MySQL 服务,如下图:

    

运行 ----> cmd ----> 进入MySQL的bin目录  ---->运行命令 mysqld.exe install 

运行结果为 Service successfully installed.


此时再查看计算机服务项,就有MySQL服务了,如下图:


但是此时MySQL服务还没有启动,现在有两种方法可以启动MySQL服务,

    第一种,直接双击MySQL服务,点击启动即可,如图:

        

    第二种,在bin目录下,运行命令 net start mysql ,如图:

        

待MySQL服务启动后,输入命令 mysql -u root -p 回车,再输入密码  回车(我的密码为空,有的MySQL密码为root,输入自己的密码即可),如图:


完美,mysql启动成功,可以使用了,以后每次使用Mysql时,不用再启动run.bat,直接在 运行 cmd 中输入 mysql -u root -p即可(若不行的话,先输入 mysql net start 再输入mysql -u root -p). 电脑开机后,别的软件可以直接访问MySQL数据库,比如eclipse中某个项目用到MySQL数据库,直接可以启动项目,不需要先跑run.bat再启动项目!

二、删除MySQL服务

运行cmd,进入MySQL的bin目录,先关闭mysql服务 net stop mysql,再运行 mysqld.exe --remove,就把计算机服务中的MySQL删除掉了,就不会有MySQL开机启动了!操作如图:


个人总结而已,若有错误,欢迎指正!谢谢!

转载于:https://blog.youkuaiyun.com/qq_41800347/article/details/79577362



<think>好的,我需要帮助用户了解如何以普通用户身份启动MySQL服务设置开机自启动。首先,我得回忆一下MySQL在不同系统下的服务管理方式,通常是使用systemd的Linux发行版,比如Ubuntu或CentOS。用户可能使用的是这类系统,所以应该重点讲解systemd的相关命令。 接下来,用户提到“普通用户”,这可能存在权限问题。通常启动系统服务需要root权限,但用户可能想避免使用sudo或者root账户。这时候需要考虑是否有方法让普通用户管理MySQL服务或者是否需要配置sudo权限。需要明确说明是否需要修改sudoers文件,给予普通用户相应的权限,比如允许执行systemctl命令。 然后,开机自启动部分,同样涉及systemctl enable命令,这也通常需要root权限。如果用户希望普通用户能够设置开机启动,可能需要配置sudo权限。或者,是否有其他方法,比如编辑rc.local文件,但这种方法在现代系统中可能不太推荐。 还需要注意MySQL安装方式,如果是通过包管理器安装的,服务名通常是mysqlmysqld,需要确认正确的服务名称。此外,安全方面,以普通用户运行MySQL服务可能涉及修改配置文件中的用户设置,但默认情况下MySQL可能使用mysql用户运行,这可能需要澄清用户的实际需求,是否是希望以另一个普通用户身份运行,还是只是启动服务。 另外,如果用户没有root权限,可能需要寻找替代方案,比如使用用户空间的服务管理工具,或者编译安装MySQL并配置为用户级服务,但这可能比较复杂。需要评估用户的技术水平,提供适合的解决方案。 最后,步骤需要具体,包括命令示例和可能的配置文件修改。同时,要提醒用户注意安全,比如避免使用弱密码,确保权限正确等。可能还需要验证步骤,比如检查服务状态,确认是否成功启动和启用自启动。</think>以下是普通用户管理MySQL服务的详细指南,包含权限配置和安全注意事: ### 一、准备工作(需root权限) ```bash # 1. 将用户加入mysql系统组 sudo usermod -aG mysql 你的用户名 # 2. 配置sudo权限(编辑sudoers文件) sudo visudo # 在文件末尾添加: 你的用户名 ALL=(ALL) NOPASSWD: /usr/sbin/service mysql * ``` ### 二、服务管理命令(普通用户执行) #### 1. 启动服务 ```bash sudo service mysql start # 或使用systemctl(适用于systemd系统) sudo systemctl start mysql ``` #### 2. 停止服务 ```bash sudo systemctl stop mysql ``` #### 3. 查看状态 ```bash systemctl status mysql --no-pager ``` ### 三、设置开机自启动 ```bash sudo systemctl enable mysql ``` ### 四、验证操作 ```bash # 查看服务是否激活 systemctl is-enabled mysql # 检查启动日志 sudo journalctl -u mysql -n 50 --no-pager ``` ### 五、配置文件权限设置 ```bash # 1. 修改配置文件所有者 sudo chown 你的用户名:mysql /etc/mysql/my.cnf # 2. 设置安全权限 sudo chmod 640 /etc/mysql/my.cnf ``` ### 六、安全注意事 1. **日志文件权限**:确保$log_error路径有读取权限 ```bash sudo setfacl -m u:你的用户名:r /var/log/mysql/error.log ``` 2. **数据目录保护**:保持`/var/lib/mysql`目录权限为mysql用户专属 3. **密码策略**:修改配置强化安全 ```ini [mysqld] validate_password.policy = STRONG ``` ### 七、排错指南 | 常见错误 | 解决方案 | |--------------------------|----------------------------| | "Access denied" | 检查sudoers配置是否正确 | | "Failed to start service"| 查看/var/log/mysql/error.log| | 端口冲突(3306) | 检查其他MySQL实例运行状态 | ### 八、高级方案(无root权限) 适用于无法获取sudo权限的情况: 1. 使用源码编译安装到用户目录 ```bash cmake . -DCMAKE_INSTALL_PREFIX=$HOME/mysql make && make install ``` 2. 配置自定义启动脚本 ```bash # 创建启动脚本 cat > ~/mysql.start.sh <<EOF #!/bin/bash $HOME/mysql/bin/mysqld_safe --datadir=$HOME/mysql/data & EOF ``` 3. 添加至用户级定时任务 ```bash (crontab -l 2>/dev/null; echo "@reboot ~/mysql.start.sh") | crontab - ``` > **注意**:生产环境建议使用官方推荐的标准安装方式,非root方案仅适用于开发测试环境。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值