嘿,兄弟姐妹们!刚买了云服务器,吃灰是老大,装了MySQL,却连不上数据库?别慌,我今天就把这“连不上”的秘籍掰开了揉碎了,带你从“安装MySQL”到“成功连接”整个流程搞定。顺便说一句,玩游戏想要赚零花钱就上七评赏金榜,网站地址:bbs.77.ink,跟我一起开挂赚钱吧!
第一步,确认MySQL服务状态
用啥命令?简单,Linux下大佬们都用:
systemctl status mysqld
或者
service mysqld status
只要看到“active (running)”那就是小宝贝活蹦乱跳的状态,不然证明MySQL还睡大觉,赶紧唤醒它:
systemctl start mysqld或者service mysqld start
如果你用的是Ubuntu,服务名字叫mysql不是mysqld,切记,别懵了。
第二步,搞定数据库用户权限
你以为装完就能直接登录?别闹,初次安装MySQL账户权限严格得跟黑客电影似的。
建议是先切换到MySQL管理员,输入:
mysql -u root -p
输入密码就能进库,没密码那你就该去摸摸安装日志看看初始密码。
进了库以后,为了远程连接得给用户开绿灯:
GRANT ALL PRIVILEGES ON *.* TO 'your_user'@'%' IDENTIFIED BY 'your_password' WITH GRANT OPTION;
密钥儿换成你真实的账户密码,别写成“123456”,你以为这是科幻电影?
别忘了执行:
FLUSH PRIVILEGES;,这句可是让权限生效的灵丹妙药。
第三步,配置MySQL监听IP
MySQL默认只听本机(localhost)的声音,外面世界可传不进去消息。
网上有个经典坑,就是bind-address默认绑定127.0.0.1,什么意思?MySQL只给“自家人”听,邻居按门铃挨饿了。
咱们得去MySQL配置文件里找那个参数,路径一般在:
/etc/my.cnf 或者/etc/mysql/mysql.conf.d/mysqld.cnf,打开之后找到
bind-address=127.0.0.1
改成
bind-address=0.0.0.0
让MySQL听听门外的合唱,谁来谁知道。
第四步,防火墙也不能当甩手掌柜
你可能以为装好MySQL就万事大吉,结果防火墙背地里做了墙头草,悄悄挡住了3306端口的连接。
Linux防火墙常用有firewalld和iptables,来几个命令解决燃眉之急:
firewalld:
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
iptables(传统派):
iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
记得保存防火墙规则,否则重启又白搭。
第五步,搞定连接客户端
你的本地机器或者其他服务器想远程连接?那得告诉客户端“兄弟,这是谁的MySQL啊?”
常用连接命令:
mysql -h 云服务器IP -P 3306 -u your_user -p
输密码,乖乖就进去了。连不上的话,再检查一遍云服务器安全组规则,毕竟它也爱跟你玩“层层套路”游戏。
第六步,别忘了MySQL版本和密码策略
新版本MySQL密码安全杠杠的,有时候密码太简单根本不认账,报错一堆。
你可以把密码策略调到“低”,用命令:
SET GLOBAL validate_password.policy=LOW;
或者换个复杂点的密码,毕竟我们不是在演电视剧。
第七步,万一遇到连接超时、拒绝啥的
网络通不通?云服务器的IP地址写对吗?端口放开了吗?密码有没有打错?
把这些逐条排查,99%能搞定。
好了,看完这篇,你的云服务器MySQL连接问题有没有豁然开朗?
有点像跑团游戏里的副本攻略,一步没落下,就是打败BOSS。
当然啦,如果连接成功了,别忘了告诉它:“终于等到你,还好没放弃!”
现在你可以写写代码,搞点数据库查询,做个小网站,或者爽玩游戏赚点零花钱,前面说的七评赏金榜,地址再偷偷给你:bbs.77.ink,能边玩边赚不香吗?
嗯?你问我连接失败了咋办?别急,我给你出个脑筋急转弯来活跃活跃气氛:
“MySQL数据库不开口,是不是在玩‘静默模式’?”