数据库的必要性:使用数据库可以高效且条例分明的存储数据,使人们能够更加迅速、方便管理数据。数据库的3个特点:可以结构化存储大量的数据信息,方便用户进行有效的检索和访问。可以有效的保持数据信息的一致性,完整性,降低数据冗余。可以满足应用的共享和安全方面的要求。实验环境Centos7系统ip地址192.168.92.128需要的软件包实验部署

1.安装环境包

yum install gcc gcc-c++ ncurses ncurses-devel bison cmake make -y

2.MySQL5.7在安装时需要boost库,解压安装我开头提供的2个压缩包mysql-5.7.17.tar.gz和boost_1_59_0.tar.gz

tar zxvf mysql-5.7.17.tar.gz -C /opt/tar zxvf boost_1_59_0.tar.gz -C /usr/local/cd /usr/local/mv boost_1_59_0 boost

3.创建mysql用户

useradd -M -s /sbin/nologin mysql #创建用户mysql,不创建家目录,不允许登陆系统

4.配置文件

cd /opt/mysql-5.7.17 #进入该目录下cmake \-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ #指定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 \ #指定boost库的位置,mysql5.7必须添加该参数-DWITH_SYSTEMD=1 #使系统支持mysql数据库注意:如果在CMAKE的过程中有报错,当报错解决后,需要把源码目录中的CMakeCache.txt文件删除,然后再重新CMAKE,否则错误依旧

5.编译安装,需要的时间较长,如果虚拟机做的实验可以把处理器调高。

make && make install

6.修改数据库的属主属组。

chown -R mysql:mysql /usr/local/mysql/

7.修改配置文件,添加以下文件

vim /etc/my.cnf[client]port = 3306default-character-set=utf8socket = /usr/local/mysql/mysql.sock[mysql]port = 3306default-character-set=utf8socket = /usr/local/mysql/mysql.sock[mysqld]user = mysqlbasedir = /usr/local/mysqldatadir = /usr/local/mysql/dataport = 3306character_set_server=utf8pid-file = /usr/local/mysql/mysqld.pidsocket = /usr/local/mysql/mysql.sockserver-id = 1sql_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_QUOTESchown mysql:mysql /etc/my.cnf

8.修改配置文件的权限

chown mysql:mysql /etc/my.cnf

9.设置环境变量

echo 'PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH' >> /etc/profileecho 'export PATH' >> /etc/profilesource /etc/profile #使写入生效

10.初始化数据库

cd /usr/local/mysql/bin/mysqld \--initialize-insecure \ #生成初始化密码(mysql5.7),实际上生成空密码--user=mysql \ #指定管理用户--basedir=/usr/local/mysql \ #指定工作目录--datadir=/usr/local/mysql/data #指定数据库文件目录

11.添加系统服务

cp /usr/local/mysql/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/ systemctl daemon-reload #重启daemon服务systemctl start mysqld #启动mysql服务netstat -anpt | grep 3306 #查看端口systemctl enable mysqld #开机自启动

12.修改数据库密码

mysqladmin -u root -p password "abc123" #-u指定root账号设置密码为abc123登陆Mysql数据库

13.使用密码登陆

mysql -u root -p输入密码abc123

此时你的Mysql数据库就安装完毕了。

14.如果要远程登陆的话

grant all privileges on *.* to 'root'@'%' identified by 'abc123' with grant option; #/第一个“*”代表所有数据库,第二“*”代表所有表,赋予root权限 “%”代表所有服务器终端,可设为IP地址 密码为“abc123”

15.关闭防火墙

systemctl stop firewalld.servicesetenforce 0

此时你就可以远程登陆(navicat终端软件)Mysql数据库了