mysql数据库安装与配置

一.安装mysql数据库

1.安装cmake工具

[root@server1 ~]# yum install -y jsoncpp-0.10.5-2.el7.x86_64.rpm
jsoncpp-devel-0.10.5-2.el7.x86_64.rpm        //先安装
[root@server1 ~]# yum install -y cmake3-3.6.1-2.el7.x86_64.rpm
cmake3-data-3.6.1-2.el7.noarch.rpm
[root@server1 ~]# ln -s /usr/bin/cmake3 /usr/local/bin/cmake   //软链接

2.gcc升级

设置aliyun的CentOS源
vim   /etc/yum.repos.d/CentOS-SCLo-scl.repo
[centos-sclo-sclo]
name=CentOS-7 - SCLo sclo
baseurl=http://mirrors.aliyun.com/centos/7/sclo/x86_64/sclo/
gpgcheck=0
enabled=1
[centos-sclo-rh]
name=CentOS-7 - SCLo rh
baseurl=http://mirrors.aliyun.com/centos/7/sclo/x86_64/rh/
gpgcheck=0
enabled=1
[centos]
name=centos os
baseurl=http://mirrors.aliyun.com/centos/7/os/x86_64/
gpgcheck=0

在这里插入图片描述

[root@server1 ~]# yum install devtoolset-7-gcc*
[root@server1 ~]# scl enable devtoolset-7 bash
[root@server1 ~]# which gcc
[root@server1 ~]# gcc --version

3.虚拟机联网操作

iptables -t nat -I POSTROUTING -s 172.25.5.0/24 -j MASQUERADE

4.mysql编译

[root@server1 ~]# tar zxf mysql-boost-8.0.21.tar.gz
[root@server1 mysql-boost-8.0.21]# mkdir build
[root@server1 mysql-boost-8.0.21]# cd build
[root@server1 build]# cmake ../ -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/data/mysql \
-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DSYSCONFDIR=/etc \
-DENABLED_LOCAL_INFILE=1 \ -DWITH_EXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8mb4 \
-DDEFAULT_COLLATION=utf8mb4_0900_ai_ci \
-DWITH_BOOST=/root/mysql-8.0.21/boost/boost_1_72_0/
###安装ncurse
[root@server1 build]# make j2       //make时间较长
[root@server1 build]# make install

二.配置mysql数据库

1.拷贝启动脚本

[root@server1 build]# cd /usr/local/lnmp/mysql/support-files/
[root@server1 support-files]# cp mysql.server /etc/init.d/mysqld

2.新建mysql用户

[root@server1 support-files]# useradd -M -d /usr/local/lnmp/mysql/ -s /sbin/nologin mysql

3.创建数据目录

[root@server1 support-files]# mkdir -p /data/mysql
[root@server1 support-files]# chown mysql.mysql /data/mysql

4.初始化数据库

[root@server1 support-files]# mysqld --initialize --user=mysql  
 //初始化产生结果的最后一行末尾是初始密码

5.启动访问数据库

[root@server1 support-files]# /etc/init.d/mysqld start
[root@server1 support-files]# mysql -p
password:   //输入初始密码

6.进入数据库修改管理员密码

[root@server1 support-files]# vim /etc/my.cnf
[root@server1 support-files]# cat /etc/my.cnf
[mysqld]
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/data/mysql/mysql.sock
skip-grant-tables	//添加参数
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d
[root@server1 support-files]# /etc/init.d/mysqld restart //重启数据库
[root@server1 support-files]# mysql -p
mysql> update mysql.user set authentication_string='' where user='root';
[root@server1 support-files]# vim /etc/my.cnf
#skip-grant-tables	//注释或删除参数
[root@server1 support-files]# /etc/init.d/mysqld restart
[root@server1 support-files]# mysql -p
mysql> alter user root@localhost identified by 'Westos+007';
mysql> flush privileges;        //刷新数据库

三.server3上部署mysql

1.拷贝server上的配置文件:

[root@server1 local]# rsync -r mysql server3:/usr/local/

2.其余配置与server1相同:

[root@server3 mysql]# groupadd -g 1001 mysql
[root@server3 mysql]# useradd -u 1001 -g 1001 -M -d /usr/local/mysql -s /sbin/nologin mysql          //保持server1,server3用户id一致
[root@server3 ~]# mkdir -p /data/mysql
[root@server3 ~]# chown mysql.mysql /data/mysql
[root@server3 ~]# vim .bash_profile             //添加环境变量 /usr/local/mysql
[root@server3 ~]# source .bash_profile
[root@server3 ~]# cd /usr/local/mysql
[root@server3 mysql]# ls
bin docs include lib LICENSE LICENSE.router LICENSE-test man mysql-test README
README.router README-test run share support-files var 
[root@server3 mysql]# cd support-files
[root@server3 support-files]# ls
mysqld_multi.server mysql-log-rotate mysql.server
[root@server3 support-files]# cp mysql.server /etc/init.d/mysqld
[root@server3 mysql]# cd /etc
[root@server3 etc]# vim my.cnf
[root@server3 etc]# cat my.cnf
[mysqld]
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/data/mysql/mysql.sock
skip-grant-tables	//添加参数
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d
[root@server3 etc]# mysqld --initialize --user=mysql2020-08-15T07:47:49.769541Z 0
[System] [MY-013169] [Server] /usr/local/mysql/bin/mysqld (mysqld 8.0.21) initializing of
server in progress as process 24277 2020-08-15T07:47:49.770475Z 0 [ERROR] [MY-010338]
[Server] Can't find error-message file '/usr/local/lnmp/mysql/share/errmsg.sys'. Check
error-message file location and 'lc-messages-dir' configuration directive. 2020-08-
15T07:47:49.779726Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2020-08-15T07:47:51.123308Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has
ended. 2020-08-15T07:47:53.063285Z 6 [Note] [MY-010454] [Server] A temporary password is
generated for root@localhost: +_io:=blk5DY    //初始密码
[root@server3 etc]# /etc/init.d/mysqld start
Starting MySQL.Logging to '/data/mysql/server3.err'.
.. SUCCESS!
[root@server3 etc]# mysql -p
Enter password:+_io:=blk5DY
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值