对于学校项目,我在本地计算机上安装了MediaWiki,并且要求与本地MySQL数据库建立任何数据库连接使用SSL.我不确定如何连接所有的点.这是我到目前为止所做的:
ssl-key ="C:/newcerts/server-key.pem"ssl-cert ="C:/newcerts/server-cert.pem"ssl-ca ="C:/newcerts/ca-cert.pem"
运行MySQL命令行会提示我输入root密码,输入后会出现错误1045:访问被拒绝等.
从bin目录运行mysql -u root -p ssl-ca ="C:/newcerts/ca-cert.pem"并输入密码成功,并给我一个mysql提示符.运行状态显示SSL:正在使用的密码是DHE-RSA-AES256-SHA.
这是我困惑的地方.还需要做什么(比如通过Apache或PHP配置文件或MediaWiki文件)来要求数据库连接使用SSL?
我正在尝试连接到mysql并收到错误.我把我的服务器IP地址放入并使用端口3306 whihch post应该使用?
<?php
$connection = mysql_connect("serer.ip:port", "user", "pass")
or die(mysql_error());
if ($connection) {$msg = "success";}
?>
<html>
<head>
</head>
<body>
<? echo "$msg"; ?>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
这是它产生的错误:
警告:mysql_connect()[function.mysql-connect]:对/home/admin/domains/domain.com.au/public_html/db_connect.php中的用户'user'@'localhost'(使用密码:YES)拒绝访问第3行拒绝用户'用户'@'localhost'访问(使用密码:YES)
Server1:xxx.xxx.xxx.xxx
server-id=1
binlog-do-db=sample
master-host = xxx.xxx.xxx.xxx
master-user = someuser
master-password = somepassword
master-connect-retry = 60
relay-log = /var/lib/mysql/slave-relay.log
relay-log-index = /var/lib/mysql/slave-relay-log.index
Run Code Online (Sandbox Code Playgroud)
服务器2:xxx.xxx.xxx.xxx
server-id=2
binlog-do-db = sample
master-host = xxx.xxx.xxx.xxx
master-user = someuser
master-password = somepassword
master-connect-retry = 60
relay-log = /var/lib/mysql/slave-relay.log
relay-log-index = /var/lib/mysql/slave-relay-log.index
Run Code Online (Sandbox Code Playgroud)
我已经在2台测试服务器上设置了主主机复制配置,我还为服务器上的mysql 3306打开了端口我面临从机连接问题我一直得到
以下错误101021 19:12:23 [错误]从属I/O:错误连接到主服务器'root@xxx.xxx.xxx.xxx:3306' - 重试时间:60次重试:86400,错误代码:1045
服务器1有mysql 5.0.77,服务器2有mysql版本5.1.41
phpMyAdmin给出了这个错误.
MySQL说:
#1045 - 用户'root'@'localhost'拒绝访问(使用密码:YES)phpMyAdmin尝试连接MySQL服务器,服务器拒绝连接.您应该检查配置中的主机,用户名和密码,并确保它们对应于MySQL服务器管理员提供的信息.
我收到一个非常奇怪的错误,我创建了一个用户'testuser',其中包含以下凭据:
CREATE USER 'testuser'@'%' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON *.* TO 'testuser'@'%';
FLUSH PRIVILEGES;
Run Code Online (Sandbox Code Playgroud)
我还修改了我的/etc/mysql/my.cnf,不要绑定到任何一个地址.(哪个afaik应该接受来自任何地方的连接?)并重新启动mysql.
我可以在本地连接没问题.
我在ubunutu的虚拟盒子里面跑.
试图从我的Windows机器连接,给我MySQL错误号码1045访问被拒绝用户'testuser'@'192.168.0.22'.
我确信这不是网络问题,因为更改主机或端口会产生不同的错误"无法连接到指定的实例"
以root身份登录并查看users表 - 所有内容都按预期显示.(单行,'%'表示主机和所有权限设置.)
我整个下午一直在撞墙,有人可以提出任何其他可能导致此错误的原因吗?
谢谢你的帮助.
我不断收到此错误:
Warning: mysql_query() [function.mysql-query]: Access denied for user 'mcabinet'@'localhost' (using password: NO) in /home/mcabinet/public_html/games/db_edit/airportmadness4.php on line 3
Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /home/mcabinet/public_html/games/db_edit/airportmadness4.php on line 3
No Database found.
Run Code Online (Sandbox Code Playgroud)
这是我的整个 .php 页面:
<?php
include("../templates/base/template2/mysql_connect.php");
$gametitle = "Airport Madness TEST";
$gamedescription = "DESCRIPtion testing a description. LOL !";
$image1url = "http://website-gamesite.com/games/images/lhfdsjk.jpg";
$categorycode = "adv";
$gametitle2 = "airportmadnesstest";
mysql_query("INSERT INTO Games VALUES (null,'$gametitle','$gamedescription','$image1url','$categorycode','0','$gametitle2'") or die ("Error Inserting Values into the Games Table");
?>
Run Code Online (Sandbox Code Playgroud)
谢谢!我刚刚开始使用 …
“Access denied for user 'xxx'@'yyy'”当尝试使用PHP-mysqli访问数据库并且在使用命令行mysql工具时使用完全相同的用户名,密码,套接字,数据库和主机时,MySQL可能存在哪些可能的原因?
更新:表
中确实有三个用户mysql.user,每个用户使用不同的主机(但使用相同的哈希密码),一个设置为localhost,一个设置为127.0.0.1,另一个设置为计算机的主机名.删除其中两个并将第三个主机更改为"%"只有一个效果:现在也使用命令行工具拒绝访问.我做了一个
select user();
Run Code Online (Sandbox Code Playgroud)
在命令行之前,它产生了在php中被拒绝的相同的xxx @ yyy.
所以我知道在整个网络上存在一个非常类似的问题以及堆栈溢出:
但我认为我的问题不同.所以我设置了一个链接服务器,它的工作原理.我为我正在使用的IP设置了正确的权限.但是,当我们的用户"webuser @ correctIP"尝试访问它时,就会出现问题.因此,任何使用窗口身份验证的用户都可以访问它并且运行良好.但任何未使用Windows身份验证的操作都会被阻止.
但是,我尝试了所有常见的解决方案,例如设置严格的密码,更改Microsoft SQL Server中的安全设置等.没有任何工作.
仅供参考:我使用的是Microsoft SQL Server 2008 - > mysql(通过phpMyAdmin)
$link = mysql_connect('localhost', $username, $password);
if (!$link)
{
die('Could not connect: ' . mysql_error());
}
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
Could not connect: Access denied for user 'www-data'@'localhost' (using password: NO)
Why?
Edit:
$username="root";
$password="root";
$database="test";
function Save($name)
{
$link = mysql_connect('localhost', $username, $password);
if (!$link) {
die('Could not connect: ' . mysql_error());
}
@mysql_select_db($database) or die( "Unable to select database");
$query = "INSERT INTO test (name)" .
"VALUES ('" . $name . "')";
mysql_query($query);
mysql_close();
}
Run Code Online (Sandbox Code Playgroud) 我知道我需要连接到db才能使mysql_real_escape_string工作,但不太确定如何工作.
我使用此函数在表中插入行.
function insert_db($conn, $table_name, $array){
//$array = array_map( 'mysql_real_escape_string' , $db ); //ERROR!
# Create the SQL Query
$query = 'INSERT INTO `'.$table_name.'` '.
'( `'.implode( '` , `' , array_keys( $array ) ).'` ) '.
'VALUES '.
'( "'.implode( '" , "' , $array ).'" )';
$result = $conn->query($query);
if (!$result){ trigger_error("mysql error: ".mysql_errno($result) . ": " . mysql_error($result)); }
}
Run Code Online (Sandbox Code Playgroud)
它需要一个这样的数组,例如:
$db["to"] = $to;
$db["from"] = $username;
$db["message"] = $message;
$db["time"] = date("Y-m-d H:i:s", strtotime("+0 minutes"));
insert_db($conn, …Run Code Online (Sandbox Code Playgroud) 这是我的代码
<?php
$host = 'localhost';
$username = 'sam_sam';
$password = '[censored]';
$name = 'sam_ballpointradio';
mysql_connect($host, $db_username, $db_password)
or die(mysql_error());
mysql_select_db($db_name) or die(mysql_error());
?>
Run Code Online (Sandbox Code Playgroud)
并且错误消息是
警告:mysql_connect()[function.mysql-connect]:对第6行/home/sam/public_html/ballpointradio/db_config.php中用户's'''localhost'(使用密码:NO)的
访问被拒绝用户拒绝访问'sam'@'localhost'(使用密码:否)
我知道所有信息都是正确的,但这是一个奇怪的错误,因为它说我没有使用密码,但我...
我的堆栈跟踪:
cbs.ui.OverallReportUI btnGenerateBillActionPerformed
SEVERE: null
java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1055)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3491)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3423)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:910)
at com.mysql.jdbc.MysqlIO.secureAuth411(MysqlIO.java:3923)
at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1273)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2031)
at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:718)
at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:46)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:302)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:282)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at cbs.ui.OverallReportUI.GenerateReport(OverallReportUI.java:219)
at cbs.ui.OverallReportUI.btnGenerateBillActionPerformed(OverallReportUI.java:153)
at cbs.ui.OverallReportUI.access$100(OverallReportUI.java:38)
at cbs.ui.OverallReportUI$2.actionPerformed(OverallReportUI.java:85)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.Component.processMouseEvent(Component.java:6038)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3260)
at java.awt.Component.processEvent(Component.java:5803)
at java.awt.Container.processEvent(Container.java:2058)
at …Run Code Online (Sandbox Code Playgroud) mysql ×12
mysql-error-1045 ×12
php ×8
phpmyadmin ×2
java ×1
jdbc ×1
mediawiki ×1
networking ×1
openssl ×1