Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql服务器未在从AMI创建的EC2实例上运行_Mysql_Amazon Web Services_Amazon Ec2_Amazon Ami_Apparmor - Fatal编程技术网

Mysql服务器未在从AMI创建的EC2实例上运行

Mysql服务器未在从AMI创建的EC2实例上运行,mysql,amazon-web-services,amazon-ec2,amazon-ami,apparmor,Mysql,Amazon Web Services,Amazon Ec2,Amazon Ami,Apparmor,我有一个EC2实例,其中Mysql服务器工作正常。我从这个AMI创建了一个AMI,并从这个AMI启动了一个新实例。现在Mysql服务器根本无法在这个新的AMI上启动 以下是o/p: ubuntu@ip-172-31-66-160:~$ sudo service mysql status ● mysql.service - MySQL Community Server Loaded: loaded (/lib/systemd/system/mysql.service; enabled; ve

我有一个EC2实例,其中Mysql服务器工作正常。我从这个AMI创建了一个AMI,并从这个AMI启动了一个新实例。现在Mysql服务器根本无法在这个新的AMI上启动

以下是o/p:

ubuntu@ip-172-31-66-160:~$ sudo service mysql status
● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: activating (start-post) (Result: exit-code) since Sun 2019-07-21 20:59:25 IST; 28s ago
  Process: 1870 ExecStart=/usr/sbin/mysqld (code=exited, status=1/FAILURE)
  Process: 1862 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
 Main PID: 1870 (code=exited, status=1/FAILURE);         : 1871 (mysql-systemd-s)
    Tasks: 2
   Memory: 3.2M
      CPU: 247ms
   CGroup: /system.slice/mysql.service
           └─control
             ├─1871 /bin/bash /usr/share/mysql/mysql-systemd-start post
             └─2529 sleep 1

Jul 21 20:59:25 ip-172-31-66-160 systemd[1]: mysql.service: Service hold-off time over, scheduling restart.
Jul 21 20:59:25 ip-172-31-66-160 systemd[1]: Stopped MySQL Community Server.
Jul 21 20:59:25 ip-172-31-66-160 systemd[1]: Starting MySQL Community Server...
Jul 21 20:59:26 ip-172-31-66-160 systemd[1]: mysql.service: Main process exited, code=exited, status=1/FAILURE
ubuntu@ip-172-31-66-160:~$ sudo service mysql restart
Job for mysql.service failed because the control process exited with error code. See "systemctl status mysql.service" and "journalctl -xe" for details.
我什么都试过了,但没能开始

最近的线索,我遇到了,并遵循没有任何运气:


  • 请帮忙,我对此一无所知。

    最后,我能够让服务器在我的新实例上运行。我所缺少的是mysql还有很多配置选项,这些选项会随着时间的推移而改变,并且它们还依赖于EC2实例配置

    在我的例子中,我的新实例的RAM非常有限,mysql.cnf文件试图分配比机器更多的RAM,因此失败了。不知怎的

    journalctl-xe

    这是一个不同的错误,迫使我往错误的方向思考。我应该查看mysql日志文件,它很快就为我指出了正确的问题

    我在错误日志文件中找到以下帮助我隔离/修复问题的内容:

    2019-07-21T16:00:55.658985Z 0 [ERROR] InnoDB: mmap(137428992 bytes) failed; errno 12 2019-07-21T16:00:55.658993Z 0 [ERROR] InnoDB: Cannot allocate memory for the buffer pool 
    2019-07-21T16:00:55.658998Z 0 [ERROR] InnoDB: Plugin initialization aborted with error Generic error 
    2019-07-21T16:00:55.659003Z 0 [ERROR] Plugin 'InnoDB' init function returned error. 
    2019-07-21T16:00:55.659620Z 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed. 
    2019-07-21T16:00:55.659628Z 0 [ERROR] Failed to initialize builtin plugins.
    2019-07-21T16:00:55.659632Z 0 [ERROR] Aborting
    
    所以mysql无法启动,因为系统中没有请求的内存量。我注释了my.cnf文件中的所有内存分配行(取决于默认设置),然后它就工作了

    innodb_buffer_pool_size = 16G
    key_buffer_size         = 2G
    max_allowed_packet      = 128M
    group_concat_max_len = 50000
    query_cache_size = 2147483648
    query_cache_limit =67108864
    

    希望有人会发现此信息有用。

    您是如何解决此问题的?那会很有用的。用解决方案更新了我的答案。