虚拟机安装mysql8.0

mysql8.0压缩包 直接把phpstudy8.0的目录弄成压缩包就可以 my.ini 可以不放进去

或者命令下载 --下载mysql8.0的版本

wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz

安装上传插件 

yum   -y  install  lrzsz 

执行命令 rz -y 上传mysql8.0 压缩包

修改名称  mv 压缩包名称 修改后的名称

mv mysql-8.0.19-linux-glibc2.12-x86_64 mysql

添加用户组 groupadd mysql               useradd -r -g mysql mysql

添加权限chown -R mysql:mysql /usr/local/mysql

mysql 初始化

--初始化mysql配置

cd /usr/local/mysql

chown -R mysql:mysql /usr/local/mysql

./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

_Nq<P?T  最后一行是mysql初始化的密码

赋予权限   

chown -R root:root /usr/local/mysql

chown -R mysql:mysql /usr/local/mysql/data

mysql初始化后,会在根目录的etc下生成一个文件 my.cnf 

查看文件  cd /  cd到根目录 cd etc  执行查看命令  cat my.cnf

--复制配置文件 cp /etc/my.cnf my.cnf

chmod 777 ./my.cnf

以下是配置文件内容:

[mysqld]

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

port=3306

socket=/usr/local/mysql/tmp/mysql.sock

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

创建mysql.sock存储文件tmp

mkdir tmp

chmod 777 tmp

加入开机自启

cd /usr/local/mysql  mysql目录下有个supportfile目录 把里面的mysql.server 复制到 /etc/init.d/mysql 这个目录下

--将mysql服务添加到/etc/init.d

cp mysql.server /etc/init.d/mysql

chmod +x /etc/init.d/mysql   //添加权限

--添加服务 chkconfig --add mysql

--查看是否添加成功 chkconfig --list mysql

出现这个就是添加成功了

mysql              0:关    1:关    2:开    3:开    4:开    5:开    6:关

回到mysql目录 cd../

启动MySQL服务  service mysql start 

配置环境变量

vi /etc/profile

profile最后一行中填写内容:

export PATH=$PATH:/usr/local/data/mysql/bin:/usr/local/mysql/lib

 保存退出之后,运行命令:source /etc/profile  让profile文件立即生效

登录mysql,修改密码 mysql -uroot -p

--修改密码 alter user 'root'@'localhost' identified by 'root';

 

 

 

启动mysql,遇到的问题。搞了几个小时

Starting MySQL... ERROR! The server quit without updating PID file (/usr/local/mysql/data/localhost.localdomain.pid).

参考博客

https://blog.51cto.com/732233048/1636409

遇到错误第一时间复制错误去百度,然后乱搞一通,莫得法子,看了这位大哥的博客后,设置错误日志

这位大哥的总结非常之牛逼

[mysqld_safe]
log-error = /usr/local/mysql/logs/error.log #这是我自己设置的路径

 执行service mysql start ,然后查看日志

创建不到sock文件,这就是目录的权限不够了,然后执行命令,赋予777权限

chmod 777 tmp

再启动mysql就行了!

———————————————————————————————————————————————————————

启动mysql成功后,登录mysql mysql -uroot -p

报错mysql:未找到命令

参考博客https://blog.csdn.net/whosheng/article/details/50006093

把/usr/local/mysql/bin/mysql  映射到  /usr/local/bin 目录下

ln -fs /usr/local/mysql/bin/mysql mysql
____________________________________________________________________________________________________

报错ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

在my.cnf文件  加上

[client]
socket=/usr/local/mysql/tmp/mysql.sock

————————————————————————————————————————————————————————

报错linux ERROR 1045 (28000): Access denied for user 'root'@'localhost'

在my.cnf文件[mysqld] 下加上这一行  skip-grant-tables  用来跳过密码验证的,然后重启mysql服务:  service mysql restart;

参考博客https://www.cnblogs.com/yaowen/p/9486997.html

3://将旧密码置空

mysql -u root -p    //提示输入密码时直接敲回车。

//选择数据库

use mysql

//将密码置空

update user set authentication_string = '' where user = 'root';

//退出

quit

4://去除免密码登陆

删掉  skip-grant-tables

重启服务  service mysql restart

5://修改密码

mysql -u root -p  //提示输入密码时直接敲回车,刚刚已经将密码置空了

ALTER USER 'root'@'localhost' IDENTIFIED BY 'root123';//'root123'  密码形式过于简单则会报错

 

 

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值