경고: mysqli_connect(): (HY000/1045):사용자 'username'@'localhost'에 대한 액세스가 거부되었습니다(암호: YES 사용).
경고: mysqli_connect(): (HY000/1045):C:에서 사용자 'username'@'localhost'에 대한 액세스가 거부되었습니다(암호: YES 사용).\Users\xampp\htdocs\PHP_Login_Script\config.6행의 php
경고: mysqli_real_escape_string()은 파라미터 1을 mysqli(C: 부울)로 예상합니다.\Users\xampp\htdocs\PHP_Login_Script\login.10행의 php
경고: mysqli_real_escape_string()은 파라미터 1을 mysqli(C: 부울)로 예상합니다.\Users\xampp\htdocs\PHP_Login_Script\login.11행의 php
경고: mysqli_query()는 파라미터 1이 mysqli(C: 부울)가 될 것으로 예상합니다.\Users\xampp\htdocs\PHP_Login_Script\login.15행의 php
경고: mysqli_fetch_array()는 매개 변수 1이 mysqli_result이며 C:에 null이 지정됩니다.\Users\xampp\htdocs\PHP_Login_Script\login.16행의 php
경고: mysqli_num_rows()는 매개 변수 1이 mysqli_result이며 C:에 null이 지정됩니다.\Users\xampp\htdocs\PHP_Login_Script\login.19행의 php
config 파일이 다음과 같은 경우에도 localhost에서 위의 오류가 발생합니다.
<?php
define("DB_HOST", "localhost");
define("DB_USER", "root");
define("DB_PASSWORD", "");
define("DB_DATABASE", "databasename");
$db = mysqli_connect(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_DATABASE);
?>
예전에는 이게 먹혔는데 지금은 안 먹혀요.이 코드에 무슨 문제가 있나요, 아니면 지금 작동이 안 되나요?이게 제가 지금 작업하고 있는 튜토리얼입니다.
이 사용자 이름, 호스트 및 비밀번호 조합은 서버에 연결할 수 없습니다.서버의 권한 테이블(필요한 경우 권한 새로 고침)과 올바른 서버에 연결 중인지 확인합니다.
wamp 업데이트를 실행하고 있는 경우
define("DB_HOST", "localhost");
사용하시는 머신의 IP 주소(내 주소는 192.168.0.25)
define("DB_HOST", "192.168.0.25");
콘솔에서 ipconfig를 입력하거나 mac/linux에서 ifconfig를 입력하면 창에서 찾을 수 있습니다.
패스워드에 특수문자가 포함되어 있지 않은 것을 확인하고, 플레인 패스워드(예:12345)를 보관해 주세요.이건 내가 본 것 중 가장 이상한 일이다.이걸 알아내는데 2시간 정도 걸렸어요
주의: 아래 12345는 일반 비밀번호입니다.
GRANT ALL PRIVILEGES ON dbname.* TO 'yourusername'@'%' IDENTIFIED BY '12345';
mysqli_connect(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_DATABASE);
DB_SERVER 대신 DB_HOST 사용
DB_HOST를 정의하고 DB_SERVER를 쿼리하는 코드를 확인합니다.DB_USER 및 DB_USERNAME 이 코드를 사용합니다.
define("DB_SERVER", "localhost");
define("DB_USER", "root");
define("DB_PASSWORD", "");
define("DB_DATABASE", "databasename");
$connect = mysqli_connect(DB_SERVER , DB_USER, DB_PASSWORD, DB_DATABASE);
DB_USER로 정의하지만 DB_USERNAME으로 사용합니다. 또한 php는 username@localhost가 액세스할 수 없다고 말합니다.root@localhost가 아닙니다.
정의 매개 변수 또는 연결 매개 변수를 변경합니다.
여기서 몇 가지를 수정했습니다.여기서 정의되어 있는 'DB_HOST'도 아래쪽에 DB_HOST가 있어야 합니다.DB_USER'도 아래쪽에 있는 'DB_USER'로 불리고 있습니다.코드가 같은지 항상 체크해 주세요.
<?php
define("DB_HOST", "localhost");
define("DB_USER", "root");
define("DB_PASSWORD", "");
define("DB_DATABASE", "");
$db = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_DATABASE);
?>
XAMPP 7과 오픈카트 아랍어 3에서도 같은 문제가 발생했습니다.localhost를 실제 시스템 이름으로 바꾸면 문제가 다시 발생합니다.
을 사용하다
에는 이 .
SET PASSWORD FOR root@localhost = PASSWORD('your_root_password');
이 쿼리를 사용한 후 이 문제에 대해 모든 것이 해결되었습니다.
코드는 다음과 같습니다.
<?php
define("DB_HOST", "localhost");
define("DB_USER", "root");
define("DB_PASSWORD", "");
define("DB_DATABASE", "databasename");
$db = mysqli_connect(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_DATABASE);
?>
이 메시지를 발생시키는 유일한 오류는 다음과 같습니다.
DB_USER
지금DB_USERNAME
.
다음부터 좀 더 주의하세요.
programmermer that in in in in in in in in in in in in in in in in in in in in in로 코딩을 하려는 엔트리 합니다.PHP
잘 모르는 것을 사용하지 않도록 한다.
참고로, (처음) 코드를 더 많이 사용해 보세요.
ex는 .define()
을 아, 아, 아, 아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아,아.$db_user = 'root';
좋은 경험 되세요:)
위의 질문에 답했습니다.연결에서 4개의 스트링을 동시에 사용하는 것을 편안하게 하기 위해서입니다.
<?php
define("DB_HOST", "localhost");
define("DB_USER", "root");
define("DB_PASSWORD", "");
define("DB_DATABASE", "databasename");
$db = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_DATABASE);
// you could test connection eventually using a if and else conditional statement,
// feel free to take out the code below once you see Connected!
if ($db) {
echo "Connected!";
} else {
echo "Connection Failed";
}
?>
, 른른른른른른른 than than than than than than than than than than than 가 아닌 다른 사용자와 하려고 할 때 했습니다.root
근근을제제제제제겁겁겁겁겁겁겁
mysql을 설정했습니다.MofX
「」를 사용해 주세요.%
연결이 안 되더라고요.
를 ""로 때"127.0.0.1
.0.MofX'@'127.0.0.1'입니다.
변수 정의에 오류가 있습니다. DB_HOST를 DB_SERVER로, DB_USER를 DB_USERNAME으로 변경합니다.
<?php
define("DB_SERVER", "localhost");
define("DB_USERNAME", "root");
define("DB_PASSWORD", "");
define("DB_DATABASE", "databasename");
$db = mysqli_connect(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_DATABASE);
?>
AWS RDS MySQL에서도 같은 문제가 발생하였습니다.방금 전에, 여기서 비슷한 질문에 대답했습니다.다양한 출처를 찾아봤지만, 현재로선 거의 답이 없습니다.이 스레드는 도움이 되었지만 서버에서 호스트 이름을 업데이트하도록 유의하십시오.SSH 에 액세스 해, 다음의 순서에 따릅니다.
cd /etc/
sudo nano hosts
여기서 호스트 이름을 추가합니다.예를 들어 다음과 같습니다.
127.0.0.1 localhost
127.0.0.1 subdomain.domain.com [if cname redirected to endpoints]
127.0.0.1 xxxxxxxx.xxxx.xxxxx.rds.amazonaws.com [Endpoints]
「」의 을 실시합니다.config/database.php
음음음같 뭇매하다
$active_group = 'default';
$query_builder = TRUE;
$db['default'] = array(
'dsn' => '',
'hostname' => '35.150.12.345',
'username' => 'user-name-here',
'password' => 'password-here',
'database' => 'database-name-here',
'dbdriver' => 'mysqli',
'dbprefix' => '',
'pconnect' => FALSE,
'db_debug' => TRUE,
'cache_on' => FALSE,
'cachedir' => '',
'char_set' => 'utf8',
'dbcollat' => 'utf8_general_ci',
'swap_pre' => '',
'encrypt' => FALSE,
'compress' => FALSE,
'stricton' => FALSE,
'failover' => array(),
'save_queries' => TRUE
);
서 ''는35.150.12.345
IPv4 Public IP 는, 다음의 URL 에 있습니다.ec2-dashboard > Network Interfaces > Description : RDSNetworkInterface >> IPv4 Public
IP('35.150.12.345')
참고: 'hostname' 옵션에서는 IPV4만 작동합니다.hostname, cname, domains는 데이터베이스 연결 오류를 출력합니다.
제 경우 문제는 다음과 같습니다.
define ('DB_PASSWORD', "MyPassw0rd!'");
(더블 " 앞에 홀수 싱글 "이 있음)
이것이 고객의 문제인 경우는, 상기의 회답의 90%를 시험해 주세요.저에게 있어서 문제는 데이터베이스 비밀번호에 $가 들어 있다는 것이었습니다.
$servername = '127.0.0.1';
$username = 'user_bob';
$password = 'sdfasdf$B';
$conn = mysqli_connect($servername, $username, $password, 'any_database');
//DO NOT USE DOUBLE QUOTES;
//$password = "sdfasdf$B";
패스워드를 입력할 때 CAPS를 붙이는 일은 없습니다.이 에러가 발생할 수 있습니다.
다른 사용자의 경우 XAMPP 8을 사용합니다. 실제로 XAMPP는 VM에 MySQL을 설치하므로 XAMPP의 IP 주소 표시를 통해 연결합니다.localhost에 MySQL 서버가 없습니다.
이는 여러 가지 이유로 발생할 수 있습니다.저 같은 경우에는 포트만 바꾸면 됩니다.DB_HOST를 정의할 때 콜론 뒤에 지정하면 됩니다.
define( 'DB_HOST', localhost:3308 )
phpmyadmin 데이터베이스의 권한 섹션에서 권한 있는 사용자와 암호를 사용해야 합니다.기본 사용자는 "root"이며 비밀번호는 없습니다.w3schools에서 검색하다가 스크립트 전체를 복사해서 붙여넣고 그게 문제라는 걸 알게 됐어요.
문제를 해결한 것은 다음과 같습니다.
config.inc.php를 엽니다.
/* Authentication type and info */
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'something';
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['AllowNoPassword'] = true;
$cfg['Lang'] = '';
이것은 파일의 일부입니다.패스워드를 삭제하고 localhost/myphpadmin(이 에러가 발생한 장소)에 로그인할 수 있었습니다.관리자에게 문의하는 등 다른 곳에서 문제가 발생할 수 있습니다.
파일을 재인스톨 해 재복사했기 때문에, 이 문제가 발생하게 되었습니다.패스워드를 삭제하고 myphpadmin에 접속하여 거기에서 데이터베이스에 패스워드를 설정하고 위와 같은 파일을 다시 작성했습니다.
동시에 2개의 접속이 있습니까?이 경우 필요하지 않을 때마다 닫으십시오.
$db = mysqli_connect(DB_SERVER,DB_USERNAME,DB_PASSWORD,DB_DATABASE);
Put " DB_HOST " instead of " DB_SERVER " also
put " DB_USER " Instead of " DB_USERNAME "
더 잘 작동하고 있어!
해라
define("DB_PASSWORD", null);
그리고 그건 경고입니다.
$db = @mysqli_connect(DB_SERVER,DB_USERNAME,DB_PASSWORD,DB_DATABASE);
단, 루트 패스워드를 설정하는 것을 추천합니다.
변경 시도:
define("DB_SERVER", "localhost");
다음과 같이 입력합니다.
define("DB_SERVER", "127.0.0.1");
언급URL : https://stackoverflow.com/questions/25174183/warning-mysqli-connect-hy000-1045-access-denied-for-user-usernameloca
'programing' 카테고리의 다른 글
오프셋이란높이, 클라이언트높이, 스크롤 높이? (0) | 2022.09.13 |
---|---|
각 루프에 대해 JavaScript에서 "다음" 반복으로 이동합니다. (0) | 2022.09.13 |
'#' 링크를 클릭했을 때 페이지 맨 위로 이동하지 않도록 하려면 어떻게 해야 합니까? (0) | 2022.09.13 |
Java에서 모든 열거값을 가져오려면 어떻게 해야 합니까? (0) | 2022.09.13 |
팬더 적용 함수에서 행의 색인을 얻는 것 (0) | 2022.09.13 |