网站建设知识
关于linux下安装mysql碰到的~~
2025-07-22 11:13  点击:0

一、背景

前阵子入手了一台云服务器,基本配置如下:

内存:512MB

硬盘:10GB SSD

流量:1000GB/月 本来只是用来做网络流量的,作为一个新手,自然是准备折腾折腾。好吧,装个mysql吧!网上查了下资料:

好!开干。

二、安装

以下是一种方案(新手勿喷~):

通过yum的方式来安装,命令yum list | grep mysql 查看可选列表

1.直入主题吧,先试试安装吧。命令:

yuminstall -y mysql-server mysql mysql-deve 此过程省略~~ 2.查看版本 rpm -qi mysql-server

3.启动mysql service mysqld 4.查看是否开机启动,都是off chkconfig --list |grep mysqld

可以设置开机启动 chkconfig mysqld on

5.设置root密码 mysqladmin -u root password 'root' 设置成功后再次设置就不允许了

三、配置

此配置是为了提供远程客户端访问,开启连接的权限。 默认mysql的用户是没有远程访问的权限的,因此当程序跟数据库不在同一台服务器上时,我们需要开启mysql的远程访问权限。 主流的有两种方法,改表法和授权法,改表法比较容易一点 1、登陆mysql1mysql -u root -p

2、修改mysql库的user表,将host项,从localhost改为%。%这里表示的是允许任意host访问,如果只允许某一个ip访问,则可改为相应的ip

mysql> use mysql;

mysql> update user set host = '%' where user = 'root';

mysql> select host, user from user;

mysql> flush privileges;

防火墙开放3306端口 1、打开防火墙配置文件1vi /etc/sysconfig/iptables

2、增加下面一行1-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

3、重启防火墙1service iptables restart
[page]

四、ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql'

jiji~~刚得瑟没久就遇到了问题。

错误提示,理解起来是空用户登录,查下解决方案。果然,强大的搜索引擎!

发现是因为mysql数据库的user表里,存在用户名为空的账户即匿名账户,导致登录的时候是虽然用的是root,但实际是匿名登录的,通过错误提示里的''@'localhost'可以看出来

然后我启动了个navicat吧那几个匿名用户删了,然后。然后可以了。顺利访问。。

五、总结

这个故事告诉我们,就算环境再差,也要不失一颗爱折腾要折腾想折腾的心呐~