最近换了份新工作,以前一直接触的是CentOS操作系统,并且是RPM安装MySQL的,现在新公司使用Debian系统,并用源码安装MySQL,所以赶紧将新知识纪录下来==
安装编译软件cmake,make
# 安装cmake
apt-get install -y cmake
# 安装make
apt-get install -y make
获得MySQL源码
http://dev.mysql.com/downloads/mysql/
创建MySQL根目录
# 创建MySQL根目录
mkdir -p /usr/local/mysql
解压MySQL源码
tar -zxvf mysql-5.6.19.tar.gz
创建mysql用户与用户组
# 创建用户组
groupadd mysql
# 创建mysql用户,所属组为mysql
useradd -s /bin/bash -m -g mysql mysql
安装MySQL依赖包
apt-get install -y libssl-dev libjemalloc-dev libncurses5-dev
创建MySQL相关目录
| 目录 | 含义 |
| :—————— | ————————- |
| bin_log | 二进制日志目录 |
| db_file | 数据文件目录 |
| innodb_log | InnoDB重做日志目录 |
| innodb_ts | InnoDB共享表空间目录 |
| log | 日志文件目录 |
| relay_log | InnoDB中继日志目录 |
| tmpdir | 临时文件目录 |
| undo_log | InnoDB回滚日志目录 |
mkdir -p /data/mysql/3306/bin_log
mkdir -p /data/mysql/3306/db_file
mkdir -p /data/mysql/3306/innodb_log
mkdir -p /data/mysql/3306/innodb_ts
mkdir -p /data/mysql/3306/log
mkdir -p /data/mysql/3306/relay_log
mkdir -p /data/mysql/3306/tmpdir
mkdir -p /data/mysql/3306/undo_log
修改步骤6创建的目录所属用户与组为mysql
chown -R mysql:mysql /data/mysql/3306
将MySQL配置文件my-3306.cnf文件放置指定目录/etc
# 将my.cnf文件放置指定目录
mv ~/my.cnf /etc
编译安装MySQL5.6.19
# 切换到源码目录
cd ~/mysql-5.6.19/
# cmake
cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql/3306/db_file -DSYSCONFDIR=/etc/my.cnf -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DENABLE_DEBUG_SYNC=0 -DENABLED_LOCAL_INFILE=1 -DENABLED_PROFILING=1 -DMYSQL_TCP_PORT=3306 -DMYSQL_UNIX_ADDR=/data/mysql/3306/tmpdir/my-3306.sock -DWITH_DEBUG=0 -DWITH_SSL=yes -DCMAKE_EXE_LINKER_FLAGS="-ljemalloc" -DWITH_SAFEMALLOC=OFF
# make
make -j${cpu_core_num}&&make install -j${cpu_core_num}&&make clean
#cpu_core_num = (grep "processor" /proc/cpuinfo|uniq|wc -l)]
# 修改MySQL根目录的所属用户与组
chown -R mysql:mysql /usr/local/mysql
初始化MySQL
# 修改mysql_install_db脚本权限
chmod 755 scripts/mysql_install_db
# 初始化MySQL
scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql/3306/db_file --defaults-file=/etc/my-.cnf --force --skip-name-resolve --user=mysql
添加MySQL环境变量
vim ~/.bashrc
# 在~/.bashrc文件下添加如下语句
export MYSQL_HOME=/usr/local/mysql
export PATH=${MYSQL_HOME}/bin:$PATH
# 保存后,使环境变量生效
source ~/.bashrc
启动MySQL
mysqld_safe --defaults-file=/etc/my.cnf &
登陆MySQL
mysql -uroot -S /data/mysql/3306/tmpdir/my-3306.sock -p
处理MySQL安全漏洞
# 删除匿名账户
DELETE FROM mysql.user WHERE user='';
# 更新root密码
UPDATE mysql.user SET password=password('new_password') WHERE user='root';
# 删除test数据库
DROP DATABASE test;
# 刷新权限
FLUSH PRIVILEGES;
关闭MySQL
mysqladmin shutdown -uroot -S /data/mysql/3306/tmpdir/my-3306.sock -p
我的博物馆故事 官方安卓版v1.61.2
我的博物馆故事是一款以消除为主题的经营养成类手游,在这里玩家
专业模拟飞行10 手机版v12.2.4
专业模拟飞行10安卓版是一款飞行休闲手游,顶尖的物理飞行引擎
动物起义战斗模拟器二琳同款 最新版v4.1.1
动物起义战斗模拟器是一个非常有趣的模拟类游戏,玩家可以召唤各
迷你世界七周年 安卓手机版v1.43.0
迷你世界7周年是一款由《迷你世界》官方推出的庆祝特别版本,在
劫后公司无限资源版 v1.0.5.1
劫后公司内置菜单版是游戏的破解版本,在该版本中为玩家提供了内