Manjaro安装Mysql8.0(血泪篇)

it2024-12-05  20

第一步: 更新源

更新软件仓库,也就是换源 sudo pacman-mirrors -i -c China -m rank //选择合适的源,安装的时候不报错即可(有些源安装的时候会出错) sudo pacman -Syy //刷新 查看软件仓库 MySQL 版本如下 pacman -Si mysql

第二步: 安装 MySQL

安装命令如下: sudo pacman -S mysql 安装成功之后, 会看到如下提示

第三步: 初始化MYSQL

初始化代码如下: sudo mysqld --initialize --user=mysql --basedir=/usr --datadir=/var/lib/mysql

这条命令是怎么来的 ? 仔细查看安装 MySQL 的输出信息

执行结果如下:

接下来一个问题一个问题解决
问题一:

解决方法如下: 这个警告的大概意思就是utf是UTF8MB4的别名,UTF8MB4是在以后的版本要使用的,需要更改一下字符设置 因此输入参数,进行设置

sudo mysqld --initialize --user=mysql --basedir=/usr --datadir=/var/lib/mysql --character-set-server=UTF8MB4

成功解决,接着往下走

问题二:

因为权限错误不能够打开文件/var/log/mysqld.log’ 解决方法如下: 进入这个目录直接

sudo touch mysqld.log //建立该文件 sudo chmod 777 mysqld.log //更改权限

更改之后,再次运行上面代码 什么都没有输出,当时一阵失望,然后突然想起来报告即log文件,打开mysqld.log 发现有输出,初始化完成,打马赛克的部分是你的密码 用户名即前面部分root@localhost 接下来启动mysql

sudo systemctl start mysqld.service

查看mysqld状态

systemctl status mysqld.service

黄色部分为running ,成功运行

问题三:

然后我查看了以下日志,也就是上面创建的mysqld.log,发现错误 解决方法如下: 将/etc/my.cnf文件下的basedir注释掉,查找资料在这

问题四:

又发生错误 查了好多资料,找到了一篇, 解决方法如下: 去掉箭头这个值,即可运行 如果想设置为开机启动,(建议设置,否则你每次都得手动启动,并且yunx)

sudo systemctl enable mysqld.service

然后输入

mysql -uroot -p
问题五:

出现如下错误,不能生成该文件 解决方法如下: 进入/var/run/mysqld 你会发现有一个mysqld.sock文件与mysql.sock不同,那这个到底能用吗?运行以下试试

mysql -uroot -p -S /var/run/mysqld/mysqld.sock

输入密码之后,成功进入,那这个就是可以用的,只需要一个软连接到/tmp/mysql.sock即可

sudo ln -s /run/mysqld/mysqld.sock /tmp/mysql.sock

再次输入

mysql -uroot -p

输入密码即可

问题六:

输入mysqld,出现以下错误 解决方法如下: 进入该目录下修改此文件夹权限

sudo chmod 777 mysql

再次输入mysqld启动,即可成功。

参考文章有: 第一篇 第二篇


问题七:

后记,上面安装完之后,我就关机了,等到再一次打开电脑,Oh my god! 又报错了,还是这个错误,我又按照之前的来了一遍,又可以使了,再重启以下,凉凉。 发现问题在于,还记得软连接的位置在/run/mysqld/mysqld.sock,关闭mysqld.server的时候,该文件夹就已经消失了,软链接也消失了,所以每次都得创建。 解决方法如下: 进入/etc/my.cnf 将socket目录直接改到/run/mysqld/mysqld.sock,此目录下,不用软连接了,然后运行,成功!

问题八:

安装之后配置 首先尝试修改密码

alter user 'root'@'localhost' identified with mysql_native_password by 'xxx'

by后面就是你设置的新密码 然后又报错了 这时,我想起来/etc/my.cnf文件下,使用了这个参数,意思就是跳过密码登录。 解决方法: 进入该文件,屏蔽该参数, 然后回头用密码进入mysql,密码在/var/log/mysqld.log文件下,上面讲过。 然后登录之后再次输入上面命令即可.


终于大功告成了, 哎,一把辛酸泪啊,Manjaro都是这么麻烦吗? 最后希望能帮到你们吧,快速趟过此坑。O(∩_∩)O哈哈~

最新回复(0)