×

为什么安装了mysql打开过然后又报错

为什么安装了mysql打开过然后又报错(启动mysql服务器报错)

admin admin 发表于2024-01-20 19:53:40 浏览25 评论0

抢沙发发表评论

大家好,关于为什么安装了mysql打开过然后又报错很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于启动mysql服务器报错的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!

本文目录

启动mysql服务器报错

一般情况下mysql的启动错误还是很容易排查的,但是今天我们就来说一下不一般的情况。拿到一台服务器,安装完mysql后进行启动,启动错误如下:

有同学会说,哥们儿你是不是buffer pool设置太大了,设置了96G内存。这明显提示无法分配内存嘛。如果真是这样也就不在这里进行分享了,哈哈。

我的服务器内存是128G。如下图:

服务器内存使用情况:

那么问题来了,既然还剩如此多的内存,为什么提示无法分配内存??。各位童鞋怎么看?

1. 首先想到会不会是有几条内存坏了?于是运维的同学进行了检查,给我的反馈是硬件一切正常。

2. 把mysql配置参数又检查了一遍,没有发现什么问题,线上一直就是使用这些参数。

3. 又把文件拷贝到另外一台机器,,另外一台服务器可以正常启动(2台机器硬件配置一致)。

那么如果排除硬件问题,mysql配置问题,那么剩下的就只有操作系统的内核参数配置了。于是把两台服务器进行了对比,最终发现了一个内核参数不一致。

复制代码代码如下:

vm.overcommit_memory

mysql启动正常的服务器改参数的值是0,而mysql启动错误的这台服务器该值是2。

那么问题来了,这个参数到底是什么鬼?竟然会让mysql分配内存失败,最后导致无法启动。经过查询资料知道了vm.overcommit_memory是什么鬼。

vm.overcommit_memory

默认值为:0从内核文档里得知,该参数有三个值,分别是:0:当用户空间请求更多的的内存时,内核尝试估算出剩余可用的内存。1:当设这个参数值为1时,内核允许超量使用内存直到用完为止,主要用于科学计算.2:当设这个参数值为2时,内核会使用一个决不过量使用内存的算法,即系统整个内存地址空间不能超过swap+50%的RAM值,50%参数的设定是在overcommit_ratio中设定。

vm.overcommit_ratio默认值为:50

这个参数值只有在vm.overcommit_memory=2的情况下,这个参数才会生效。

那么我们来看一下总的内存地址不能超过多少。其实是可以直接查看的。

# cat /proc/meminfo |grep -i commitCommitLimit:  70144396 kBCommitted_AS:   135196 kB#

通过查看可以得知在70G的样子。那么这个是如何计算的呢?这个就是上面提到的一个公式。swap+50%的RAM值,50%参数的设定是在overcommit_ratio中设定。

总虚拟内存 = 可用物理内存 × 百分比 + 交换分区

# cat /proc/meminfo | grep MemTotalMemTotal:    132096808 kB# # free -ktotal    used    free   shared  buffers   cachedMem:   132096808  1583944 130512864     0   10240   133220-/+ buffers/cache:  1440484 130656324Swap:   4095992     0  4095992# cat /proc/sys/vm/overcommit_ratio 50#

总虚拟内存=132096808 * 50% + 4095992= 70144396 kB

那么最后的结果就是buffer pool不能超过70144396 kB - 135196 kB=70009200 KB=66G。实际上经过测试,buffer pool只能设置57G。

最后在看看总虚拟内存情况:

CommitLimit:最大可用虚拟内存

Committed_AS:已使用虚拟内存

# cat /proc/meminfo |grep -i commitCommitLimit:  70144396 kBCommitted_AS:  65539208 kB

那么如果把内核参数vm.overcommit_memory恢复为默认值0,那么将不会受到约束。

复制代码代码如下:

echo 0 》 /proc/sys/vm/overcommit_memory

***隐藏网址******隐藏网址***

总结:

说了这么多,那么为什么要修改内核参数vm.overcommit_memory的值呢?这个是因为这台服务器之前跑过GreenPlum数据库,拿到我手上的时候没有进行重装系统,那么还是建议如果拿到的机器之前跑过其他的业务,那么保险的方法还是重装一下系统,然后再部署自己的业务,不然真的会出现莫名其妙的问题。

pymysql已安装,但是使用时报错请问是什么问题

这个是安装pymysql后没有编译的问题,将pymysql的位置放如Libary下就好,pymysal的安装位置可以通过 print(pymysql) 获得.会报错 import pymysql不会》》》 import pymysql》》》 import pymysql.cursoreTraceback (most recent call last):File "《stdin》", line 1, in 《module》ImportError: No module named ’pymysql.cursore

在windows上安装了两个mysql数据库,启动服务报错

主要还是因为,使用的版本对INNODB未支持导致。出错代码:1067 解决办法如下: 1.删除%windows%/my.ini 2.删除其它地方的my.ini 3.在mysql安装目录下把my-small.ini复制为my.ini 4.在my.ini最后一行插入:

我按照百度经验里的步骤安装mysql,每次启动MySQL就出现如下图的错误

这个是你系统的环境变量异常,可能之前操作什么影响到了临时的操作可以命令行输入cd C:\Windows\System32net start mysql【服务名称可能不会是mysql具体的看下系统服务,有可能是net start mysql57】在环境变量中将下面内容加入到path中SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\Program Files\Common Files\Thunder Network\KanKan\Codecs

我安装了mysql,但是每次在dos环境下启动mysql的时候都出错

这种情况是因为mysql命令并不在你的环境中输出。解决办法有二:1.假如你的mysql安装的命令是在:c:\program files\mysql\mysql server 5.0\bin 那么在dos命令行执行的时候需要这样执行: c:\》cd c:\program files\mysql\mysql server 5.0\bin c:\program files\mysql\mysql server 5.0\bin》mysql -hlocalhost -uroot -psa2.如果想在每次使用这个命令时不想输入c:\program files\mysql\mysql server 5.0\bin这一路径,而想直接使用mysql.那么按以下方法操作:在“我的电脑”右击打开我的电脑属于,选择“高级”选项,在“高级”下面选择环境变量,在环境变量中找到path,然后把c:\program files\mysql\mysql server 5.0\bin目录放加到path后面。

已经安装了PyMySQL,但是还是提示错误

方法/步骤:MySQL安装文件分为两种,一种是msi格式的,一种是zip格式的。如果是msi格式的可以直接点击安装,按照它给出的安装提示进行安装(相信大家的英文可以看懂英文提示),一般MySQL将会安装在C:\Program Files\MySQL\MySQL Server 5.6 该目录中;zip格式是自己解压,解压缩之后其实MySQL就可以使用了,但是要进行配置。解压之后可以将该文件夹改名,放到合适的位置,个人建议把文件夹改名为MySQL Server 5.6,放到C:\Program Files\MySQL路径中。当然你也可以放到自己想放的任意位置。完成上述步骤之后,很多用户开始使用MySQL,但会出现图示的错误。这是因为没有配置环境变量所致。配置环境变量很简单:我的电脑-》属性-》高级-》环境变量选择PATH,在其后面添加: 你的mysql bin文件夹的路径 (如:C:\Program Files\MySQL\MySQL Server 5.6\bin )PATH=.......;C:\Program Files\MySQL\MySQL Server 5.6\bin (注意是追加,不是覆盖)配置完环境变量之后先别忙着启动mysql,我们还需要修改一下配置文件(如果没有配置,之后启动的时候就会出现图中的错误哦!:错误2 系统找不到文件),mysql-5.6.1X默认的配置文件是在C:\Program Files\MySQL\MySQL Server 5.6\my-default.ini,或者自己建立一个my.ini文件,在其中修改或添加配置(如图):basedir=C:\Program Files\MySQL\MySQL Server 5.6(mysql所在目录)datadir=C:\Program Files\MySQL\MySQL Server 5.6\data (mysql所在目录\data)以管理员身份运行cmd(一定要用管理员身份运行,不然权限不够),输入:cd C:\Program Files\MySQL\MySQL Server 5.6\bin进入mysql的bin文件夹(不管有没有配置过环境变量,也要进入bin文件夹,否则之后启动服务仍然会报错误2)输入mysqld -install(如果不用管理员身份运行,将会因为权限不够而出现错误:Install/Remove of the Service Denied!)安装成功

MySQL安装为什么会报错,哪里出问题了

你好,很高兴回答你的问题。你截图中的这个命令是操作系统的,和mysql没有关系。应该是环境变量设置有问题。你搜一下“netstat 环境变量”,按照搜到的结果设置环境变量再执行命令。如果有帮助到你,请点击采纳。

下载mysql 启动的时候报错

1、原因:可能是/usr/local/mysql/mysql.pid文件没有写的权限;解决方法 :给予权限,执行 “chmod 775 /usr/local/mysql/ -R” 然后重新启动mysqld。2、原因:可能进程里已经存在mysql进程;解决方法:用命令“ps -ef|grep mysqld”查看是否有mysqld进程,如果有使用“kill -9 进程号”杀死,然后重新启动mysqld。3、原因:可能是第二次在机器上安装mysql,有残余数据影响了服务的启动;解决方法:去mysql的数据目录/data看看,如果存在mysql-bin.index,就赶快把它删除掉吧,它就是罪魁祸首了。4、原因:mysql在启动时没有指定配置文件时会使用/etc/my.cnf配置文件,请打开这个文件查看在节下有没有指定数据目录(datadir);解决方法:请在下设置这一行:datadir = /usr/local/mysql/data。5、原因:skip-federated字段问题;解决方法:检查一下/etc/my.cnf文件中有没有没被注释掉的skip-federated字段,如果有就立即注释掉吧。6、原因:错误日志目录不存在;解决方法:使用“chown” “chmod”命令赋予mysql所有者及权限。7、原因:如果是centos系统,默认会开启selinux;解决方法:关闭它,打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled后存盘退出重启机器试试。8、原因:log-bin路径错误;解决方法:查看对应数据库下的error log,例如我的数据库为,/usr/local/mysql/var目录,其下的localhost.localdomain.err为错误日志,只要把其下的ib_logfile*删除即可,重启mysql即可。一、Linux下MySQL的启动与停止1、Mysql启动、停止、重启常用命令a、启动方式(1)使用 service 启动:# service mysqld start (5.0版本是mysqld)# service mysql start (5.5.7版本是mysql)(2)使用 mysqld 脚本启动:/etc/inint.d/mysqld start(3)使用 safe_mysqld 启动:safe_mysqld&b、停止方式(1)使用 service 启动:service mysqld stop(2)使用 mysqld 脚本启动:/etc/inint.d/mysqld stop(3)mysqladmin shutdownc、重启方式(1)使用 service 启动:service mysqld restart service mysql restart (5.5.7版本命令)(2)使用 mysqld 脚本启动:/etc/init.d/mysqld restart

MySQL 安装完之后重启电脑有错误提示,是哪里错了

1、如果发生重启前下载了应用程序软件或运行程序软件时发生重启,则可能是程序软件引起的重启,一般将程序软件卸载再重新安装,如果故障依旧,则说明程序软件本身有错误,不能使用。 2、开机按F8进入安全模式后在退出,在进入正常模式。也可用系统自带的系统还原功能进行还原,如果重启故障排除,则是系统文件受损造成的重启。 3、检查主板,主板老化、电容失效或爆浆、主板与机箱背板发生短路等均可引发重启,可将主板从机箱取出检查或测试,接着检查CPU风扇散热片的底部硅胶是否变干,如果变干,将CPU风扇上的硅胶清理干净,然后重新涂上硅胶即可。接着检查CPU的风扇转动,及CPU的温度是否正常。 4、如果故障依旧,接着检查电源,电源品质差,老化或功率过小,无法满足电脑各配件的供电需求,可更换大功率高质量的电源,如果故障排除,则是电源引起的重启故障。

文章分享结束,为什么安装了mysql打开过然后又报错和启动mysql服务器报错的答案你都知道了吗?欢迎再次光临本站哦!