리눅스 간단한 서버 구축하기 - MySQL

범수·2024년 7월 4일

LinuxServer

목록 보기
3/7
post-thumbnail

>> MySQl 설치하기 <<

콘솔 창 입력

sudo apt update
sudo apt install mysql-server	// Ubuntu MySQL 설치

sudo mysql_secure_installation	// MySQL 설치 후 보안 설정

> 우분투에서 MySQL 설치 후 보안 설정하기

MySQL 접속하기

콘솔 창 입력

sudo mysql -u root -p	// MySQl 접속
CREATE DATABASE user_db; // DB생성

USE user_db;	// DB접속

> MySQL 접속 후 user_db에 접속하기

테이블 생성 및 데이터 삽입

콘솔 창 입력

CREATE TABLE users (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(20) NOT NULL,
    phone VARCHAR(15),
    birth VARCHAR(6)
);	// users 테이블 생성

INSERT INTO users (name, phone, birth) VALUES ('Beom Su', '010-1111-1111', '000000');
INSERT INTO users (name, phone, birth) VALUES ('Heung Min', '010-2222-2222', '920708');
INSERT INTO users (name, phone, birth) VALUES ('Kang In', '010-3333-3333', '010219');
// 테이블 데이터 삽입

PHP와 MySQL 연결

콘솔 창 입력 // conn.php파일 생성 후 아래 코드 삽입

<?php
$servername = "localhost";
$username = "root";
$password = "your_password";
$dbname = "your_db";

// MySQL 연결 생성	mysqli 중요!(철자 틀리면 안됨*함수임*)
$conn = new mysqli($servername, $username, $password, $dbname);

// 연결 확인
if ($conn->connect_error) {
    die("연결 실패: " . $conn->connect_error);
}
echo "연결 성공!";
?>

** 주의! **
연결 안될 시 페스워드 재설정 필요!

>MySQL8.0 이상에서는 비밀번호 정책이 설정되어 충족하는 번호로 변경해야 함
1. 비밀번호 길이 최소 몇 글자 이상이여야 함
2. 대문자, 소문자, 숫자, 특수문자 등을 포함해야 함

MySQL에서 변경 시
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Strong_Password123!';
conn.php 파일 정상 연결화면

MySQL 비밀번호 정책 설정 변경

MySQL 설정 파일 (my.cnf 또는 my.ini)에서 비밀번호 정책을 변경

-----------------my.ini---------------------
[mysqld]
validate_password.policy=LOW
// MySQL 설정 파일을 열어서 [mysqld] 섹션에 다음과 같이 비밀번호 정책 관련 옵션을 추가
  • 'LOW': 비밀번호 길이만 체크
  • 'MEDIUM': 길이와 숫자/특수 문자 포함 여부 체크
  • 'STRONG': 길이, 숫자, 특수 문자, 대문자/소문자 포함 여부 체크

MySQL 테이블과 PHP 연결

MySQL user 테이블 확인

users 테이블

user.php 파일 생성
<!DOCTYPE html>
<html>
<head>
	<title>User Table</title>
</head>
<body>
	<?php	
	$conn = new mysqli('localhost','root','your_password','user_db');
	if($conn->connect_error){
		die("연결 실패: " . $mysqli->connect_errno  . $conn->connect_error);
	}else{
		echo "연결 성공!";
	}
	$sql = "select * from users";
	$result = $conn->query($sql);
	$conn->close();
	?>
	<h2>User Info</h2>
	<table>
	<tr>
		<th>Name</th>
		<th>Phone</th>
		<th>Birth</th>
	</tr>
	<?php while($row = $result->fetch_assoc()){ ?>
	<tr>
		<td><?php echo $row["name"]; ?></td>
		<td><?php echo $row["phone"]; ?></td>
		<td><?php echo $row["birth"]; ?></td>
	</tr>
	<?php }; ?>
	</table>
</body>
</html>

> MySQL과 PHP 연결 꼭 확인!

user.php user테이블 연결확인

마무리

  • MySQL와 PHP 연결이 안될 경우
    • MySQL 버전이 8.0이상일 경우 정책에 맞게 비밀번호 변경해보기
  • WIFI연결 시 다른 로컬 기기에서도 user.php 접속해보기
profile
범수의 개발 놀이터😋

0개의 댓글