您的位置:首页 > 运维架构 > Linux

Linux下XAMPP装完之后,Navicat无法连上数据库的问题的解决 注意'mypassword'是当前的mysql登录密码

2016-01-10 00:08 1176 查看
Linux下装完XAMPP之后,mysql是自带装好了的,这个时候,mysql的root用户没有密码。

在mac 下安装好xampp后,需要在终端命令行操作时,比如输入:mysql -u root -p,未正确配置前不会出现想要的输入密码提示,而是会提示:

command not found

原来当你输入命令的时间,系统会在/usr/bin这个位置里寻找你输入的命令,如果你没有把命令引入到这个位置,无论你直接cd到工具具体的位置 调用,也是白费功夫的。只要把这个工具的绝对位置引入到/usr/bin,所有的问题就迎刃而解了,只要我们把这条命令执行:

sudo ln -s /opt/lampp/bin/mysql /usr/bin

#rm -rf /usr/bin/mysql  删除软链接


这样如果不是管理员,会提示输入密码,输入密码就能执行成功。

这时再输入mysql -u root -p就可以正确执行了

首先进入mysql (进入xampp中mysql程序所在的目录,输入./mysql就可以了),输入命令:mysql -uroot -p。输入密码时直接回车。

设置密码:set password =password('123456');

设置完密码之后,用本地的Navicat连接这个mysql,发现连不上,而且出现一个很奇怪的现象,弹出框显示,另一个ip下的root用户被拒绝访问!

原来是 因为root没有被赋予足够的权限!执行这段命令即可: GRANT ALL PRIVILEGES ON *.* TO ‘root'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;执行完之后,别忘了重启mysql。这时候,Navicat客户端可以轻松的连接上mysql数据库了

2. 修改phpMyAdmin的配置文件。

进入xampp下的phpmyadmin目录下,有配置文件config.inc.php,进入到文件里面。可以看到如下的内容:

/* Authentication type and info */
$cfg['Servers'][$i]['auth_type'] = ‘http’;

$cfg['Servers'][$i]['user'] = ‘root’;

$cfg['Servers'][$i]['password'] = ”;

$cfg['Servers'][$i]['extension'] = ‘mysql’;

$cfg['Servers'][$i]['AllowNoPassword'] = true;

$cfg['Lang'] = ”

本文我们主要介绍一下Navicat MySQL在连接Linux下的MySQL时出现的问题的解决方案,它是一套功能强大的MySQL资料库伺服器管理及开发工具,可以用于在任何3.21或以上的MySQL版本,并支援最新版MySQL的大部份功能,包括触发器、预存程序、函式、事件、检视、管理使用者等等。

Navicat MySQL适用于三种平台- Microsoft Windows, Mac OS X及Linux。它可以让使用者连接本地/远端MySQL Server、提供一些实用的工具如资料/结构同步、汇入/汇出、备份及报表以协助管理资料的流程。

Navicat for MySQL Enterprise Edition 8.1.18注册码:NAVE-WAGB-ZLF4-T23K 使用Navicat连接Linux 下的MySQL遇到的问题。

Error1: 2003:Can't connect to MySQL server on 'localhost'

解决方法:

关闭Linux的防火墙功能,或者设置容许TCP协议的3306端口通过,可以下使用如下命令开启TCP协议的3306端口。

[root@bugzilla ~]# more /etc/sysconfig/iptables。

-A INPUT -p tcp --dport 3306 -j ACCEPT。

Error2: 1130 - Host'ClientIP' is not allowed to connect to this MySQL server。

解决方法:

使用root 用户登陆Linux,登陆MySQL的root用户,更改容许登陆的IP地址范围。

[root@bugzilla ~]# mysql -u root -p

mysql>grant all privileges on *.* to 'root'@'%' identified by '密码' with grant option;

这段指令容许所有用root用户输入密码登陆该mysql server,如果将'%' 换成'192.168.1.100' ,那么只有'192.168.1.100'的主机可以登陆。

关于Navicat MySQL连接Linux下的MySQL数据库的知识就介绍到这里了,希望本次的介绍能够对您有所收获!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: