본문 바로가기
[MySQL] C++ 연동 - libmysqlcppconn 사용 설정usertestpasswordtest@1234databasetest_dbtabletest_table test_table의 모든 id / name 정보를 출력 // MySQL#include #include #include int main(){ try { sql::mysql::MySQL_Driver *driver = sql::mysql::get_mysql_driver_instance(); sql::Connection *con = driver->connect("localhost", "test", "test@1234"); // 사용할 데이터베이스 선택 con->setSchema("test_db"); // SQL 쿼리 실행 .. 2025. 3. 13.
[MySQL] C++ 연동 - libmysqlcppconn Ubuntu 설치 1. libmysqlclient 설치 확인dpkg -l | grep libmysqlcppconn-dev2. 설치되어있지 않다면 라이브러리 설치sudo apt-get install libmysqlcppconn-dev 헤더 경로 : /usr/include라이브러리 경로 : /usr/lib/x86_64-linux-gnu/libmysqlcppconn.so3. MySQL 서버 실행 상태 확인sudo systemctl status mysql4. CMakeLists.txt 에 라이브러리 링크ex)MySQLTest 프로젝트에 설정cmake_minimum_required(VERSION 3.10.0)project(MySQLTest VERSION 0.1.0 LANGUAGES C CXX)# 실행 파일 설정add_executa.. 2025. 3. 11.
[MySQL] root 인증 방식 변경 MySQL 8.0 이상버전에서는 root 사용자가 기본적으로 auth_socket 플로그인을 사용(리눅스 시스템 사용자 인증 방식) root로 접속 [MySQL] 접속하기기본 접속# 기본 접속mysql -u [사용자명] -p# 비밀번호를 설정하지 않은 루트mysql root  리눅스 시스템 사용자 인증방식(auth_socket )인 경우 root 접속sudo mysqlmorningcopy.tistory.com 1. 현재 인증 방식 확인select user, host, plugin from mysql.user where user = 'root';  2-1. 비밀번호 인증 방식으로 변경ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password B.. 2025. 3. 10.
[MySQL] MySQL 접속하기 1. MySQL서버가 동작중인지 확인Ubuntusudo systemctl status mysql 2. 접속- Password 접속# 기본 접속mysql -u [사용자명] -p# 비밀번호를 설정하지 않은 루트mysql root - 리눅스 시스템 사용자 인증방식(auth_socket )인 경우 root 접속sudo mysql  인증방식 변경 방법 [MySQL] root 인증 방식 변경MySQL 8.0 이상버전에서는 root 사용자가 기본적으로 auth_socket 플로그인을 사용(리눅스 시스템 사용자 인증 방식) root로 접속 [MySQL] 접속하기기본 접속# 기본 접속mysql -u [사용자명] -p# 비밀번호를morningcopy.tistory.com 2025. 3. 10.
[MySQL] 자료형 정수형 bytessignedunsingedTINYINT1-128 ~ 1270 ~ 255SMALLINT2-32768 ~ 327670 ~ 65535MEDIUMINT3-8388608 ~ 83886070 ~ 16777215INT4~2147483648 ~ 21474836470 ~ 4294967295BIGINT8-9223372036854775808 ~92233720368547758070 ~ 18446744073709551615 자료형에 unsigned 설정자료형 뒤에 unsigned를 붙임ex) BIGINT unsigned 문자열 bytes CHAR1 TEXT2 VARCHAR2 2024. 11. 4.
[MySQL] 테이블 관리 데이터 베이스 선택(없으면 생성) [MySQL] 데이터 베이스 관리데이터 베이스 목록 보기show databases; 사용할 데이터 베이스 설정 // use [데이터베이스]// ex) test_dbuse test_db; 현재 사용중인 데이터 베이스 확인select database();  데이터 베이스 생성create database [morningcopy.tistory.com테이블 생성기본 쿼리create table [테이블] ( 컬럼명1 자료형1, 컬럼명2 자료형2,); ex) PlayerTable을 생성CREATE TABLE PlayerTable ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(100) NOT NULL, email VARCHAR.. 2024. 10. 23.
[MySQL] 데이터 베이스 관리 데이터 베이스 목록 보기show databases; 사용할 데이터 베이스 설정 use 'DB명';현재 사용중인 데이터 베이스 확인select database();데이터 베이스 생성create database 'DB명'데이터 베이스 제거DROP DATABASE 'DB명' 데이터 베이스 이름 변경1. 변경할 이름의 데이터 베이스를 새로 생성CREATE DATABASE '새DB'; 2. 테이블을 이동RENAME TABLE '기존DB.TABLE' TO '신규DB.TABLE'; 3. 기존 데이터 베이스 삭제DROP DATABASE '기존DB'; 2024. 10. 20.
[MySQL] 유저 관리 유저 정보는 mysql 데이터 베이스 -> user 테이블에 관리 root 계정으로 mysql 데이터 베이스 접근mysql -u root -puse mysql 사용자 리스트 확인select user from user 현재 유저 확인select user(); 유저 생성create user '유저' identified by '비밀번호'  user 테이블 구조desc mysql.user;Host접속 허용 타입localhost : 내부에서만 접근 가능% : 외부에서도 접근 가능    유저 권한 확인SHOW GRANTS for 'test_user'  유저 권한 설정 ex) test_user에게 test_db 데이터 베이스의 모든 테이블 모든 권한을 준다grant all privileges on test_db.* .. 2024. 10. 19.
[MySQL] 비밀번호 초기화 1. 서버 중지mysql.server stop 2. --skip-grant-tables 옵션으로 서버 시작해당 옵션은 루트 인증없이 mysql 서버에 접근mysql.server start --skip-grant-tables 3. 루트 계정으로 접속mysql -u root 4. 비밀번호 초기화update mysql.user set authentication_string=null WHERE User='root'; 5. 변경된 권한 설정flush privileges 2024. 10. 19.
[MySQL] 명령어 모든 명령은 뒤에 세미콜론(;)을 붙여야한다exit;나가기show database;모든 데이터 베이스 출력use [데이터베이스];사용할 데이터 베이스 선택select database();현재 선택된 데이터 베이스를 출력show tables;데이터 베이스 테이블 리스트 출력mysql.server start서버 시작mysql.server stop서버 종료desc [테이블];테이블 구조 확인show grants for [대상 유저];대상 유저 권한 확인현재 접속한 유저의 권한을 확인할 경우 current_user로 입력show grants fo current_user; 2024. 10. 19.