Ubuntu中mysql8初始化

一、停止mysql服务

systemctl stop mysql

        查看mysql状态

 ps -e |grep mysql

         可以看到mysql已经停止了

二、初始化

        我初始化的目的是为了将数据库目录移出去,减少主目录磁盘压力,这是我的配置文件。

        红线部分就是我的数据库目录

将之前的数据库目录删除,没有将数据库迁移出去默认的目录为 /var/lib/mysql,而我的目录为

/servicedata/mysql。将mysql目录删掉(如果需要备份的话先备份,备份的名字不可以叫mysql之类的名字,否则后期会有麻烦),下面是删除命令

rm -rf /servicedata/mysql

Ubuntu中mysql8初始化_第1张图片         接下来,创建文件夹mysql

mkdir mysql

Ubuntu中mysql8初始化_第2张图片

         将文件夹赋值,授权

chown -R mysql:mysql  mysql  #更改文件所属

chmod -R 777  mysql  #对目录赋予权限

        查看权限是否变更 

ll

Ubuntu中mysql8初始化_第3张图片

        修改权限 

  vi /etc/apparmor.d/usr.sbin.mysqld

Ubuntu中mysql8初始化_第4张图片

 

service apparmor restart

         接下来初始化,并启动

mysqld --initialize

systemctl start mysql

 如果出现了这样错误,打开mysql日志查看

 more /var/log/mysql/error.log

        这里提示uuid创建失败,去看看auto.cnf文件该文件在你自己新建的mysql中 

         这里出现这个问题的原因是,权限不够,在我们实例化后,文件自动由root用户创建,现在需要将权限付给mysql用户

cd /service
chown -R mysql:mysql  mysql*

         再次启动,查看mysql状态

Ubuntu中mysql8初始化_第5张图片

         好了这样就启动了,去获取随机生成的密码登录,获取密码有两种方式,自己试试

grep "password" /var/log/mysql/error.log
 
grep "password" /var/log/mysqld.log

        locahost后面就是生成的密码 

        拿到密码后修改原始密码,然后初始化就完成了,用于尝试,不要怕犯错

你可能感兴趣的:(linux,mysql,数据库,服务器)