数据库基本介绍以及mysql数据库安装与基本用法
一、数据库的基本介绍
数据库顾名思义是用来存储数据用的仓库,其可以记录的数据包括:数字、文字、图形、声音等信息。数据库的类型可以分为两类:关系型数据库和非关系型数据库,其中关系型数据库用来存储数字、字符等信息。而非关系型数据库可用来存储图片视频和声音等信息。
mysql数据库是关系型数据库,其记录数据的方式是:以记录的形式按统一的格式进行存储,每一条记录可以看做是一行,许多行又组成了一张表。而数据库则是许多表的集合。而表与表之间又存在着一定的关系与之相关联,比如一张表里存放着人名和学号,另一张表中则有学号和成绩,是两张表相关联的是学号这个键。
二、mysql数据库的安装
mysql数据库的安装非常简单,这里我整理出了一份安装mysql-5.7.17的脚本。
#安装编译环境
yum install gcc gcc-c++ ncurses ncurses-devel bison cmake -y
#创建mysql系统用户且无法登陆
useradd -s /sbin/nologin mysql
#解压安装包
tar xzvf mysql-5.7.17.tar.gz -C /opt/
#解压boost包到安装路径下
tar zxvf boost_1_59_0.tar.gz -C /usr/local/
#移动到安装包路径下
cd /opt/mysql-5.7.17/
#编译安装
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DSYSCONFDIR=/etc \
-DSYSTEMD_PID_DIR=/usr/local/mysql \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DWITH_BOOST=/usr/local/boost \
-DWITH_SYSTEMD=1
make && make install
#mysql安装目录的属组和属组修改
chown -R mysql:mysql /usr/local/mysql
#修改配置文件
vim /etc/my.cnf
[client]
port = 3306
default-character-set=utf8
socket = /usr/local/mysql/mysql.sock
[mysql]
port = 3306
default-character-set=utf8
socket = /usr/local/mysql/mysql.sock
[mysqld]
user = mysql
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
character_set_server=utf8
pid-file = /usr/local/mysql/mysqld.pid
socket = /usr/local/mysql/mysql.sock
server-id = 1
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES
#更改配置文件的属主和属组
chown mysql:mysql /etc/my.cnf
#系统识别mysql命令,加入环境变量
echo 'PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH' >> /etc/profile
echo 'export PATH' >> /etc/profile
source /etc/profile
#初始化数据库
cd /usr/local/mysql/
bin/mysqld \
--initialize-insecure \
--user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data
#复制启动脚本使系统可以启动
cp usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/
systemctl daemon-reload
systemctl start mysqld
#开启开机自启动mysql
systemctl enable mysqld
#设置数据库管理员密码
mysqladmin -u root -p password
Enter password:
New password:
Confirm new password:
#登陆数据库
mysql -uroot -p
#给root用户设置权限
grant all privileges on *.* to 'root'@'%' identified by '111111' with grant option;
修改mysql文件夹的属主和属组
配置文件也要修改
配置文件的内容
初始化数据库
三、mysql的基本操作
首先启动mysql查看3306端口是否开启。
进入数据库:mysql -uroot -p
#查看数据库
show databases;
#创建数据库
create database 数据库名称;
#进入数据库
use 数据库名;
#创建表
create table 表名称 ( #回车
#定义字段
#字段名、类型、是否为空;最后定义主键
id int(4) not null, #回车
name char(10)not null, #回车
address varchar(50) default 'nj', #回车
score decimal, #回车
primary key (id)); #回车
#查看有哪些表表
show tables;
#查看表的结构
describe 表名称;
#插入字段
insert into 表名称 (id,name,address,score)values (001,'zhangsan','tj',100);
#查看某表中的内容 *代表所有内容
select * from 表名称;
#修改表中的内容
update 表名称 set 字段名='修改内容' where 主键名称='';
#删除表中一条记录内容
delete from 表名称 where 字段名='';
#删除整张表
drop table 表名称;
#删除数据库
drop database 数据库名称;
#查看某用户的权限
show grants for '用户名'@'终端';
#撤销用户权限
revoke all on *.* from '用户名'@'终端';
四、总结
mysql数据库的基本操作只是增删修改等操作后面还会讲解其他深入的数据库操作知识。