返回
Linux操作系统下的数据库安装配置及数据库C程序连接详解
后端
2024-01-29 03:34:23
一、数据库的安装和配置
1. 数据库的安装
1.1 MySQL安装
sudo apt-get update
sudo apt-get install mysql-server
1.2 PostgreSQL安装
sudo apt-get update
sudo apt-get install postgresql
2. 配置
2.1 MySQL配置
sudo /etc/init.d/mysql start
sudo mysql_secure_installation
2.2 PostgreSQL配置
sudo /etc/init.d/postgresql start
sudo su - postgres
psql
3. 常用命令
3.1 MySQL常用命令
CREATE DATABASE:创建数据库
USE DATABASE:使用数据库
SHOW DATABASES:显示所有数据库
SHOW TABLES:显示当前数据库中的所有表
DESCRIBE TABLE:显示表的结构
INSERT INTO:向表中插入数据
SELECT * FROM:从表中选择所有数据
WHERE:过滤数据
UPDATE:更新数据
DELETE:删除数据
3.2 PostgreSQL常用命令
CREATE DATABASE:创建数据库
\c DATABASE:连接到数据库
\l:显示所有数据库
\d:显示当前数据库中的所有表
\d TABLE:显示表的结构
INSERT INTO:向表中插入数据
SELECT * FROM:从表中选择所有数据
WHERE:过滤数据
UPDATE:更新数据
DELETE:删除数据
4. 用户管理与授权
4.1 MySQL用户管理与授权
CREATE USER:创建用户
GRANT:授予权限
REVOKE:撤销权限
FLUSH PRIVILEGES:刷新权限
4.2 PostgreSQL用户管理与授权
CREATE USER:创建用户
GRANT:授予权限
REVOKE:撤销权限
ALTER ROLE:修改角色的权限
二、数据库C程序连接
1. 安装C/C++开发库
sudo apt-get update
sudo apt-get install build-essential
sudo apt-get install libmysqlclient-dev
sudo apt-get install libpq-dev
2. C语言访问mysql
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <mysql.h>
int main() {
MYSQL *con = mysql_init(NULL);
if (mysql_real_connect(con, "localhost", "root", "", "test", 0, NULL, 0) == NULL) {
fprintf(stderr, "%s\n", mysql_error(con));
mysql_close(con);
exit(1);
}
MYSQL_RES *res = mysql_store_result(con);
MYSQL_ROW row;
while ((row = mysql_fetch_row(res)) != NULL) {
printf("%s\n", row[0]);
}
mysql_free_result(res);
mysql_close(con);
return 0;
}
3. 测试C语言连接数据库
gcc -o test test.c -lmysqlclient
./test
如果输出结果为:
1
2
3
则表示C语言程序成功连接到了数据库。