1、选择下载包
测试时选择并下载的是mysql-8.0.28-linux-glibc2.12-x86_64.tar 压缩包
2、解压缩并更名为mysql放到 /usr/local 目录下(更名是因为mysql.server内默认的根目录为mysql,更名后不需要再修改)
3、转到mysql的目录下通过mkdir data 命令或其他可行方式新建 data目录。
4、创建用户组以及用户和密码
groupadd mysql
useradd -g mysql mysql
测试时是在mysql目录下输入的以上命令
5、授权用户
chown -R mysql.mysql /usr/local/mysql
6、初始化
./mysqld --user=mysql --basedir=/usr/local/mysql--datadir=/usr/local/mysql/data/ --initialize
并记住末尾的随机密码
7、 转到/usr/local/mysql/support-files目录 ,启动mysql.server生成连接数据库所用mysql.sock 文件,具体命令为
./mysql.server start
此时会在/tmp 目录下生成mysql.sock文件(该文件重启后会消失,需重新启动服务器生成)
8、编辑数据库的配置文件my.cnf
在uos系统中该文件在/etc/mysql 目录下,且为软连接,实际的文件最终指向mariadb.cnf。
同时需注意的是:如果你安装过多个版本或不同方式的安装,可能因未彻底卸载和清理,导致系统中出现多个my.cnf文件,那么就存在位置优先和内容优先的关系,需要进行认真梳理。
9、登录数据库提示没有发现命令的问题
mysql -u root -p 输入后报错提示如下:
$ mysql: error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directory
此时可下载或找一个libtinfo.so.5的文件,放入 /lib/x86_64-linux-gnu 目录下
10、更改密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
flush privileges;
如果输入 flush privileges;提示: ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' flush privileges' at line 1
则可以退出数据库 quit;用修改后的密码重新登录后再输入。
如果输入 mysql命令提示没有找到,则可以将mysql命令添加到uos系统服务文件目录中
ln -s /usr/local/mysql/bin/mysql /usr/bin
测试中发现通过 service mysql start命令无法启动mysql服务,提示
Unit mysql.service could not be found.
第一篇详细教程中有叙述如何添加mysql服务到系统服务目录并授权等内容,暂时未测试成功。
但通过上述步骤,已经可以启动服务并连接数据库。
转载情况:
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/young_0609/article/details/109015666
————————————————
linux 安装mysql8.0 超详细教程_yang灬仔-CSDN博客_linux 安装mysql8
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/zhizhengguan/article/details/86686621
————————————————