我不断收到此错误:警告:mysqli_connect():(HY000/1045):用户“12345”@“localhost”的访问被拒绝(使用密码:是)。我已经尝试创建一个新用户,使用密码,不使用密码,授予新用户权限。我可以使用这些凭据登录到 mysql 数据库。我可以在 MySQL 中使用它们运行每个命令,只是不连接到 PHP。如果重要,这是我的php代码
<? php
$dbServername = "localhost";
$dbUsername = "12345";
$dbPassword = "12345";
$dbName = "loginsystem";
$conn = mysqli_connect($dbServername, $dbUsername, $dbPassword, $dbName);
When showing grants for user: '12345'@'localhost':
mysql> SHOW GRANTS FOR '12345'@'localhost';
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Grants for 12345@localhost |
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, CREATE ROLE, DROP ROLE ON *.* TO `12345`@`localhost` |
| GRANT BACKUP_ADMIN,BINLOG_ADMIN,CONNECTION_ADMIN,ENCRYPTION_KEY_ADMIN,GROUP_REPLICATION_ADMIN,PERSIST_RO_VARIABLES_ADMIN,REPLICATION_SLAVE_ADMIN,RESOURCE_GROUP_ADMIN,RESOURCE_GROUP_USER,ROLE_ADMIN,SET_USER_ID,SYSTEM_VARIABLES_ADMIN,XA_RECOVER_ADMIN ON *.* TO `12345`@`localhost` |
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
2 rows in set (0.00 sec)
/etc/my.cnf 文件(在 MYSQL 中):
[mysqld_safe]
[mysqld]
secure_file_priv="/Users/Steven/"
/etc/my.cnf 文件(内部 xAMPP):
#password = your_password
port = 3306
socket = /Applications/XAMPP/xamppfiles/var/mysql/mysql.sock
# Here follows entries for some specific programs
# The MySQL server
[mysqld]
user = mysql
port=3307
socket = /Applications/XAMPP/xamppfiles/var/mysql/mysql.sock
skip-external-locking
key_buffer = 16M
max_allowed_packet = 1M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
innodb_force_recovery = 1
哦,我忘了提到我确实刷新了权限并重新启动了服务器。
你好@Steven 根据我的经验 xampp 在 Mac 上出错(至少在我看来)所以我使用了MAMP。如果你愿意,你可以检查它。但是到了你的错误点,这似乎是一个连接问题:请尝试这个连接代码:
$user = '12345';
$password = '12345';
$db = 'loginsystem';
$host = 'localhost';
$port = your_port-might-be-3306;
$link = mysqli_init();
$success = mysqli_real_connect( $link, $host, $user, $password, $db, $port );
echo $success;
如果 $success 变量显示 1 则连接正常。如果是这样,那么您的连接有效。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句