mysql数据库搭建完整流程linux版本

首先需要准备好相应的软件

可以在网上选择下载

wget http://dev.mysql.com/Downloads/MySQL-5.7/mysql-5.7.12.tar.gz

 wget

https://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz/download

#如果boots软件包无法下载建议使用win系统下载

卸载之前的mysql依赖软件

安装mysql安装软件

yum -y remove mysql-* boost-*

yum -y install gcc gcc-c++ ncurses ncurses-devel bison libgcrypt perl cmake yum -y install gcc gcc-c++ ncurses ncurses-devel bison libgcrypt perl cmake

rpm -ivh /media/cdrom/Packages/ncurses-devel-5.9-14.20130511.el7_4.x86_64.rpm

先对boot压缩包解压到当前路径

tar -zxvf boost_1_59_0.tar.gz

移动解压的boots包 到指定路径

mv boost_1_59_0 /usr/local/boost/

创建一个mysql程序用户

useradd -r -M -s /sbin/nologin mysql

对mysql压缩包解压到指定路径

 tar zxvf mysql-5.7.12.tar.gz -C /usr/src/

然后cd到该压缩包里 进行服务优化

Cmake . 需要什么服务就添加在这里添加该该服务       我在这里添加了几种必要的服务

 

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql  [MySQL安装的根目录]

-DMYSQL_DATADIR=/mydata/mysql/data  [MySQL数据库文件存放目录]

-DDEFAULT_CHARSET=utf8  [设置默认字符集为utf8]

-DDEFAULT_COLLATION=utf8_general_ci  [设置默认字符校对]

-DMYSQL_TCP_PORT=3306  [MySQL的监听端口]

-DMYSQL_USER=mysql  [MySQL用户名]    

-DWITH_MYISAM_STORAGE_ENGINE=1  [安装MySQL的myisam数据库引擎]

-DWITH_INNOBASE_STORAGE_ENGINE=1  [安装MySQL的innodb数据库引擎]

-DWITH_ARCHIVE_STORAGE_ENGINE=1  [安装MySQL的archive数据库引擎]

-DWITH_BLACKHOLE_STORAGE_ENGINE=1  [安装MySQL的blackhole数据库引擎]

-DWITH_MEMORY_STORAGE_ENGINE=1  [安装MySQL的memory数据库引擎]

-DENABLE_DOWNLOADS=1  [编译时允许自主下载相关文件]

-DDOWNLOAD_BOOST=1  [允许下载BOOST]

-DWITH_BOOST=/usr/local/boost  [指定系统中存在的BOOST]

-DSYSCONFDIR=/etc  [MySQL配置文件所在目录]

-DWITH_READLINE=1  [MySQL的readline library]

-DMYSQL_UNIX_ADDR=/var/run/mysql/mysql.sock  [MySQL的通讯目录]

-DENABLED_LOCAL_INFILE=1  [启用加载本地数据]

-DWITH_PARTITION_STORAGE_ENGINE=1  [启动mysql的分区存储结构]

-DEXTRA_CHARSETS=all  [使MySQL支持所有的扩展字符]

-DWITH_DEBUG=0  [禁用调试模式]

-DMYSQL_MAINTAINER_MODE=0  [维护者特定的开发环境]

-DWITH_SSL:STRING=bundled  [通讯时支持ssl协议]

-DWITH_ZLIB:STRING=bundled  [允许使用zlib library]

查看cpu内核数

cat /proc/cpuinfo | grep processor | wc -l

编译安装 

#在编译安装失败的情况下 要删除CMAKE的缓存 

#rm -rf /usr/src/mysql-5.7.12/CMakeCache.txt

Make -j 4

Make install

查看是否安装成功

ls /usr/local/mysql

bin  COPYING  data  docs  include  lib  logs  man  mysql-test  README  share  support-files

更改程序用户的权限

编辑mysql配置文档

把mysql应用程序拷贝到系统命令下赋予其执行权限

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

cp /usr/src/mysql-5.7.12/support-files/my-default.cnf /etc/my.cnf

cp:是否覆盖"/etc/my.cnf"? y

 cp /usr/src/mysql-5.7.12/support-files/mysql.server /etc/init.d/

chmod +x /etc/init.d/mysql.server

对mysql服务做启停优化

Vi  /usr/lib/systemd/system/mysqld.service

[Unit]

Description=mysqldapi

After=network.target

[Service]

Type=forking

PIDFile=/usr/local/mysql/logs/mysqld.pid

ExecStart=/etc/init.d/mysql.server start

ExecReload=/etc/init.d/mysql.server restart

ExecStop=/etc/init.d/mysql.server stop

PrivateTmp=Flase             ##此配置必须关闭,不然mysql连接文件mysql.sock文件会默认生成在以下位置

[Install]

WantedBy=multi-user.target  

echo "export PATH=$PATH:/usr/local/mysql/bin/" >>/etc/profile

source /etc/profile

初始mysql数据服务

 mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

注解:

--initialize-insecure ##禁用mysql的密码策略(密码复杂性等),--initializeaize是开启密码策略,自动生成密码在mysqld.log文件中

--user=mysql ##运行的账户

--basedir=/usr/local/mysql ##mysql的安装位置

--datadir=/usr/local/mysql/data ##mysql数据库服务数据的物理存放路径

对mysql服务进行进行文件配置

cat <<END >/etc/my.cnf

[mysqld]

basedir = /usr/local/mysql

datadir = /usr/local/mysql/data

port = 3306

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

character_set_server=utf8

init_connect='SET NAMES utf8'

log-error=/usr/local/mysql/logs/mysqld.log

pid-file=/usr/local/mysql/logs/mysqld.pid

END

创建一个mysql日志文件目录 对该下的文件进行权限更改

mkdir /usr/local/mysql/logs

chown mysql:mysql /usr/local/mysql/logs/

启动mysql服务

systemctl start mysqld

systemctl enable mysqld

查看mysqld服务端口号

netstat -anpt | grep 3306

Mysql 登录 进行密码设置

 alter user 'root'@'localhost' identified by '666666';

[root@liqi mysql-5.7.12]# mysql -uroot -p666666

只要能登录进去说明就已经搭建完成

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值