Linux安装Mysql
Linux安装Mysql
1 卸载老版本 MySQL
查找并删除 mysql 有关的文件
1 | find / -name mysql |
2 下载mysql-linux版本,进行解压
去官网下载mysql后上传到服务器进行解压。
1 | tar -xvf mysql-8.0.31-linux-glibc2.12-x86_64.tar.xz |
3 重命名解压后的文件
1 | mv mysql-8.0.31-linux-glibc2.12-x86_64 mysql8 |
4 添加 mysql 用户组和 mysql 用户
1 | groupadd mysql |
如果已经添加过,则会提示组合用户已经存在
5 进入 mysql 目录新建data,logs目录并更改权限
mysql8版本,不需要建data目录,后续会报错。–踩坑了
1 | cd mysql/ |
6 编辑my.cnf vim /etc/my.cnf
此处socket修改为/tmp/mysql.sock
1 | [mysqld] |
7 启动mysql,进入bin目录,安装mysql
8 解决异常
The newly created data directory /usr/local/software/mysql/mysql8/data/ by –initialize is unusable. You can remove it.
解决办法:my.cnf中,去除#datadir配置,mysql8之后自己会生成,无需指定。
ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)
解决方法:my.cnf中的socket路径,做一次ln映射
1 | ln -s /usr/local/software/mysql/mysql8/mysql.sock /tmp/mysql.sock |
9 启动mysql
10 查看初始化密码,登录修改初始化密码
由于在 my.cnf 中已经指定了 log error 的路径,因此初始化的过程中所有的输出包括密码都保存在了指定的路径和log文件中,进入logs目录查找密码。如果复制密码还显示密码错误,查看一下error.log的启动日志,可能登录使用空密码即可。
cat error.log | grep “password”
11 更新mysql路径
1 | vim /etc/profile //全局 |
12 修改初始化密码
1 | ALTER USER 'root'@'localhost' IDENTIFIED BY '123456'; |
13 开机自启动mysql设置
1 | cp /usr/local/software/mysql/mysql8/support-files/mysql.server /etc/init.d/mysql |
14 增加远程登录权限
上一步即可本地登录,但远程登录会报错
为解决这一问题,需要本地登陆 MySQL 后执行如下命令
1 | 使用mysql库:use mysql |
重新测试远程连接
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Chenghao-blog!




















