码迷,mamicode.com
首页 > 数据库 > 详细

Centos7编辑安装mysql(mysql-5.7)

时间:2018-08-23 00:28:06      阅读:248      评论:0      收藏:0      [点我收藏+]

标签:ali   ip地址   初始化   mon   需要   存储引擎   ant   https   ack   

数据库的必要性:使用数据库可以高效且条例分明的存储数据,使人们能够更加迅速、方便管理数据。

数据库的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 = 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

8.修改配置文件的权限


chown mysql:mysql /etc/my.cnf

9.设置环境变量

echo ‘PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH‘ >> /etc/profile
echo ‘export PATH‘ >> /etc/profile
source /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.service
setenforce 0

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

Centos7编辑安装mysql(mysql-5.7)

标签:ali   ip地址   初始化   mon   需要   存储引擎   ant   https   ack   

原文地址:http://blog.51cto.com/13777111/2163117

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!