(一)mysql 安装

2020-07-16  本文已影响0人  后知不觉1

.安装方式主要有是那种 编译后源码安装,rpm 安装,源码安装;主要介绍前两种

1.编译后的源码安装(tar.gz)

下载源可以自行选择,这里以华为云镜像源展示

  wget https://mirrors.huaweicloud.com/mysql/Downloads/MySQL-5.7/mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz

安装

安装在/usr/local/mysql 下;这里格式有点问题,直接复制使用会报错去掉前面空格正常;

 cd /usr/local/   #进入安装目录
 tar -xvf   mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz   #解压
 ln -s mysql-5.7.28-linux-glibc2.12-x86_64 mysql   #

 #这里有一个坑,就是源文件夹权限也要修改为mysql:mysql 不然无法创建mysql.sock,error.log 授权一下mysql-5.7.28-linux-glibc2.12-x86_64就正常了
chown -R mysql:mysql mysql-5.7.28-linux-glibc2.12-x86_64
  
 cp /usr/local/mysql/support-files/mysql.server   /etc/init.d/mysqld  #添加mysqld服务
 chmod +x /etc/init.d/mysqld  #添加可执行权限
 chkconfig --add /etc/init.d/mysqld  #设置开机启动
 chkconfig --list  #检查开机启动设置是否成功

mysql 配置文件修改/etc/my.conf

[mysqld]
datadir=/usr/local/mysql/data      #数据存放位置;
socket=/usr/local/mysql/mysql.sock 
basedir=/usr/local/mysql       #msyql的主目录,默认值/usr/local/mysql,可省略,如果安装目录不是在该位置,不可省略

[client]
socket=/usr/local/mysql/mysql.sock   #client 不配的话会默认读/tmp/mysql.sock,导致登录失败
[mysqld_safe]
log-error=/usr/local/mysql/data/mariadb.log   #启动失败日志存放位置
pid-file=/usr/local/mysql/data/mariadb.pid    

创建mysql 用户

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

mysql 初始化

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

启动

systemctl start mysqld

备注如果启动失败,看日志排查问题;一般都是配置目录有问题;

配置环境变量在登录linux后会加载/etc/profile 文件,针对任意用户;
配置环境变量时只需要关注path 就行,多个用冒号分割;
path 是告诉系统再加载命令时将对应的目录加载过来,这样在执行命令就知道去哪里找文件了;

    export JAVA_HOME=/usr/local/java
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar   #classpath 是jdk用到的,告诉基本的jar 去哪里找;
    export MYSQL_HOME=/usr/local/mysql
    export PATH=$JAVA_HOME/bin:$MYSQL_HOME/bin:$PATH

忘记密码

属性添加 skip-grant-tables 重启mysqld

 update user set authentication_string = password ( 'new-password' ) where user = 'root' ; 

重启mysqld

登录mysql执行 ALTER USER USER() IDENTIFIED BY "new password"

常见问题

这是缺少包

  /usr/local/mysql/bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
  这是缺少包
   yum install -y libaio

进程已经存在

  Starting MySQL... ERROR! The server quit without updating PID file (/home/mysql/data/localhost.pid)

  手动kill 一下就好

附:
mkdir -p /tmp/mysqld
cd /tmp
touch mysql.sock
chown -R mysql:mysql mysql.sock
chmod 755 mysql.sock

cd mysqld
touch mysqld.pid
chmod 755 mysqld.pid
chown -R mysql:mysql mysqld.pid

cd /var/log
touch mysqld.log
chmod 755 mysqld.log

上一篇下一篇

猜你喜欢

热点阅读