Linux环境 Mysql安装详解
前言
mysql作为被广泛使用的数据库,安装的必要性是无需质疑的,而本人在多次安装中遇到了情况各异的问题,所以想以这篇文章记录一下安装配置的过程。并且尽量详细介绍每一步的原因,如果再遇到问题,知其然且知其所以然的情况下,能够快速的解决问题。
正文
-
获取mysql安装源文件
-
准备mysql目录
-
解压压缩包
tar xzvf mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz
-
转移到目标目录
mv /usr/download/mysql-5.7.20-linux-glibc2.12-x86_64 /usr/local/mysql
-
添加数据目录
mkdir /usr/local/mysql/data
-
添加mysql用户组
主要是为了mysql程序有权限操作当前系统
groupadd mysql
useradd -r -g mysql mysql
chown -R mysql:mysql /usr/local/mysql
chmod -R 755 /usr/local/mysql
-
编译安装
cd /usr/local/mysql/bin
./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql
正常情况会在最后一行输出临时密码,自己记录下来即可
如果出现缺少依赖的情况
-
error while loading shared libraries libaio.so.1
安装文件
yum install libaio-devel.x86_64
-
error while loading shared libraries: libuma.so.1
yum -y install numactl
-
配置mysql
由于版本不同,基础版本和mariadb之间的差距,因此在配置中使用基础的配置即可,笔者的配置出现了
配置文件为:/etc/my.cnf
[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid
但是在启动时,以上文件夹和文件均不存在,报了相应错误,所以笔者就注释掉,改为只在配置文件中保留必要的配置,其他配置看个人需要增加
datadir=/usr/local/mysql/data
port = 3306
-
启动mysql
cd /usr/local/mysql/support-files/
./mysql.server start
-
重新配置mysql
暂时需要在bin目录下执行
-
修改密码
mysql -u root -p
Enter password:
set password for root@localhost = password('yourpass');
-
修改外网可以访问
mysql>use mysql;
msyql>update user set user.Host='%' where user.User='root';
mysql>flush privileges;
-
配置mysql命令可执行和脚本启动
当前修改环境变量更稳定可靠的方式应该是在**/etc/profile.d文件夹内添加新的命令号,耦合性低,便于管理。例如将mysql添加进入环境变量,在该文件夹内新增mysql.sh**文件
export MYSQL_HOME=/usr/local/mysql
export PATH=$PATH:$MYSQL_HOME/bin
添加完成后,执行
source /etc/profile
即可。
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
放入执行目录后,执行
service mysql start
即可启动