准备安装包
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-boost-5.7.29.tar.gz
wget https://github.com/thkukuk/rpcsvc-proto/releases/download/v1.4/rpcsvc-proto-1.4.tar.gz
安装编译环境
yum install -y gcc gcc-c++ make cmake ncurses ncurses-devel bison libtirpc libtirpc-devel rpcgen
创建mysql用户
useradd mysql -s /sbin/nologin
解压rpcsvc安装包
tar xvf rpcsvc-proto-1.4.tar.gz
cd rpcsvc-proto-1.4
编译安装
./configure && make && make install
解压mysql安装包
tar xvf mysql-boost-5.7.29.tar.gz
cd mysql-5.7.29
编译安装
cmake \-DCMAKE_INSTALL_PREFIX=${mysql_home}\-DSYSTEMD_PID_DIR=${mysql_home}\-DMYSQL_UNIX_ADDR=${mysql_home}/mysql.sock \-DMYSQL_DATADIR=${mysql_home}/data \-DSYSCONFDIR=/etc \-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\-DWITH_BOOST=${boost_home}/boost_1_59_0 \-DWITH_SYSTEMD=1&&\ make-j $(nproc)&&\ make install数据库授权
chown -R mysql.mysql ${mysql_home}
修改配置文件
vim /etc/my.cnf
[client]socket=/opt/mysql/data/mysql.sockdefault-character-set=utf8[mysqld]datadir=/opt/mysql/data socket=/opt/mysql/data/mysql.sock port=3306skip-ssl init_connect='SET collation_connection=utf8_general_ci'init_connect='SET NAMES utf8'character-set-server=utf8 collation-server=utf8_general_ci skip-character-set-client-handshake max_connections=3000lower_case_table_names=1skip-name-resolve=1log_bin_trust_function_creators=1transaction_isolation=READ-COMMITTED binlog_format=mixed max_allowed_packet=104857600local-infile=0skip_symbolic_links=yes sql_mode=STRICT_ALL_TABLES,NO_AUTO_CREATE_USER symbolic-links=0log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid新增完成之后需要创建一个日志文件
touch /var/log/mysqld.log
授权
chown -R mysql:mysql /var/log/mysqld.log
初始化数据库
mysqld--initialize-insecure--user=mysql--basedir=${mysql_home}--datadir=${mysql_home}/data初始化完成之后查看data目录是否有文件写入
启动mysql
cp ${mysql_home}/usr/lib/systemd/system/mysqld.service/usr/lib/systemd/system systemctl daemon-reload systemctl enable mysqld.service systemctl start mysqld.service一般初始化之后root密码默认为空,直接回车。
mysql - uproot -p
修改root密码
alter user ‘root’@‘localhost’ identified by ‘新密码’;
创建用户
GRANT ALL PRIVILEGES ON.TO ‘用户名’@‘%’ IDENTIFIED BY ‘密码’ WITH
GRANT OPTION;
重载授权表:
FLUSH PRIVILEGES;