首页 > 数据库 >MySQL配置通过systemctl管理

MySQL配置通过systemctl管理

时间:2023-08-04 09:23:05浏览次数:37  
标签:systemd service 配置 systemctl mysqld usr mysql MySQL

 

MySQL配置通过systemctl管理

 

参考官方文档资料,步骤不多。

创建mysqld.service文件。

touch /usr/lib/systemd/system/mysqld.service
chmod 644 /usr/lib/systemd/system/mysqld.service

 

 

官方对MySQL5和MySQL8提供的mysqld.service内容并不同。

/etc/sysconfig/mysql文件可以定义一些环境变量值,malloc,时区等,没有需求可以不用创建该文件。

MySQL5:

vi /usr/lib/systemd/system/mysqld.service
[Unit]
Description=MySQL Server
Documentation=man:mysqld(7)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target

[Install]
WantedBy=multi-user.target

[Service]
User=mysql
Group=mysql
Type=forking
PIDFile=/data/mysql3306/mysql3306.pid
TimeoutSec=0
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --daemonize --pid-file=/data/mysql3306/mysql3306.pid $MYSQLD_OPTS 
EnvironmentFile=-/etc/sysconfig/mysql
LimitNOFILE = 65536
Restart=on-failure
RestartPreventExitStatus=1
PrivateTmp=false

 

 

MySQL8:

vi /usr/lib/systemd/system/mysqld.service
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target

[Install]
WantedBy=multi-user.target

[Service]
User=mysql
Group=mysql
Type=notify
TimeoutSec=0
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf $MYSQLD_OPTS
EnvironmentFile=-/etc/sysconfig/mysql
LimitNOFILE = 65536
Restart=on-failure
RestartPreventExitStatus=1
Environment=MYSQLD_PARENT_PID=1
PrivateTmp=false

 

 

设置内存分配管理。

说明:jemalloc是一个malloc()碎片避免和可扩展的并发支持的实现。

它旨在用作系统提供的内存分配器,如FreeBSD的libc库,以及链接到C / C ++应用程序。jemalloc提供了许多超出标准分配器功能的内省,内存管理和调优功能。

jemalloc从各方评测的结果可见与google tcmalloc都不相伯仲,皆为内存管理器领域最高水平。相对于glibc自带的lib库,jemalloc的性能有glibc的两倍以上。

另外,想启用TokuDB引擎,必须使用jemalloc。防偷防爬

安装完jemalloc后:

vi /etc/sysconfig/mysql
LD_PRELOAD=/usr/local/lib/libjemalloc.so.2

 

 

重载systemctl配置,设置mysqld服务开机自启动。

systemctl daemon-reload
systemctl enable mysqld
systemctl start mysqld

 

 

其他一些定制化需求,可以根据需要添加,详情可以网上查找systemctl的详细使用。

ReStartSec=1s # 重启条件满足后等多久自动重启(秒)
StartLimitInterval=300 # 五分钟内只能重启两次,第三次不重启了
StartLimitBurst=2 # 五分钟内只能重启两次,第三次不重启了
TimeoutStartSec=30 # 服务启动的超时时间,单位秒
TimeoutStopSec=30 # 服务关闭的超时时间,单位秒

 

一些其他小技巧:

systemctl cat mysqld # 查看mysqld.service文件内容
journalctl -u mysqld # 查看指定mysqld服务的信息

 

 

https://www.cnblogs.com/PiscesCanon/p/17605003.html

参考链接:

https://dev.mysql.com/doc/mysql-secure-deployment-guide/8.0/en/secure-deployment-post-install.html#secure-deployment-systemd-startup

https://dev.mysql.com/doc/mysql-secure-deployment-guide/5.7/en/secure-deployment-post-install.html#secure-deployment-systemd-startup

https://dev.mysql.com/doc/refman/8.0/en/using-systemd.html

 

标签:systemd,service,配置,systemctl,mysqld,usr,mysql,MySQL
From: https://www.cnblogs.com/PiscesCanon/p/17605003.html

相关文章

  • python + mysql
    1.连接mysql数据库,基本数据查询流程#1.连接conn=pymysql.connect(host='127.0.0.1',port=3306,user='root',password='',db='db8',charset='utf8')#2.创建游标cursor=conn.cursor()#注意%s需要加引号sql="select*fromu......
  • 9.2.Config Server 配置规则详解
    9.2.ConfigServer配置规则详解在上面,我们用于测试的配置文件:futurecloud.ymlfuturecloud-dev.ymlfuturecloud-test.ymlfuturecloud-pre.ymlfuturecloud-stable.ymlfuturecloud-apigetway-zuul.yml“-”前面的部分可以随便定义,一般我们用应用名来定义,后面的deb、test…也可以随......
  • KeePass2中文配置
    KeePass2中文配置1、下载Chinese_Simplified.lngx文件(链接:https://pan.baidu.com/s/1CNjWvx-V_a4XCmhY_hLiGw?pwd=txtv提取码:txtv);2、正常安装好官网KeePass2软件;3、将第1步中的文件,放到C:\ProgramFiles\KeePassPasswordSafe2\Languages目录下;4、进入到KeePass2软件,按图......
  • MySQL查询语句(1)
    连接数据库mysql-hlocalhost-uroot-prootDQL-介绍DQL英文全称是DataQueryLanguage(数据查询语言),数据查询语言,用来查询数据库中表的记录查询SELECT字段列表FROM表名列表WHERE条件列表GROUPBY分组字段列表HAVING分组后条件列表ORDERBY排序字......
  • Modbus tcp转ETHERCAT在Modbus软件中的配置方法
    Modbustcp和ETHERCAT是两种不同的协议,这给工业生产带来了很大的麻烦,因为这两种设备之间无法通讯。但是,捷米JM-ECT-TCP网关的出现,却为这个难题提供了解决方案。JM-ECT-TCP网关能够连接到Modbustcp总线和ETHERCAT总线中,实现两种不同协议设备之间的通讯。这个网关能够大大提高工......
  • Python安装与配置
    一、Windows下安装Python3。官网地址:https://www.python.org/下载地址:https://www.python.org/ftp/python/3.6.4/python-3.6.4-amd64.exe二、安装1、为了不去设置环境变量,我选择Customizeinstallation安装,并且勾选AddPython3.6toPATH。   2、选择安装路径,我安装......
  • mysql插入报错java.sql.SQLException: Incorrect string value: '\xF0\x9F\x87\xA
    背景环境java8,centos7.9,mysql8.0.34新装的环境,默认给装了mysql8,想着与时俱进用下新版,结果插入就报错java.sql.SQLException:Incorrectstringvalue:'\xF0\x9F\x87\xA8\xF0\x9F...'forcolumn解决方法这个错误通常是由于MySQL数据库中的字符集不支持存储特定的字符或表情符......
  • InnoDB – the best storage engine for MySQL?
    https://dev.mysql.com/doc/refman/5.7/en/innodb-introduction.html InnoDBisageneral-purposestorageenginethatbalanceshighreliabilityandhighperformance.InnoDB是一个通用的存储引擎,平衡了高可靠性和高性能。InMySQL5.7,InnoDBisthedefaultMySQLsto......
  • Redis从入门到放弃(1):安装配置
    文章目录1.介绍2.优势3.安装Redis4.后台运行5.配置Redis5.1查看配置项5.2修改配置项5.3参数说明6.错误解决1.介绍Redis是一个高性能的开源key-value数据库。它被广泛应用于缓存、会话存储、实时分析、消息队列等场景。Redis具有以下三个主要特点:数据持久化:Redis支持......
  • 搭建Mysql主从复制
    文章目录1、MySQL支持的复制类型2、MySQL主从复制的工作过程3、搭建步骤步骤1:环境准备步骤2:主从服务器时间同步步骤3:配置主服务器步骤4:创建从服务器账户步骤5:配置从服务器步骤4:启动从服务器复制4、主从延迟问题5、结论MySQL主从复制是一种常用的数据库高可用性解决方案,可以提高......