最近在整顿本人私人服务器上的各种阿猫阿狗,正好就棘手具体记录一下清理之后重装的步骤,明天先写点数据库的内容,对于在 Linux
中装置配置MySQL
装置环境
CentOS7 + MySQL5.7
下载安装包
mysql-5.7.26 版本下载地址(点击链接间接下载)
操作步骤
- 利用 xFtp 上传
mysql.gz
包至装置目录下,我的目录是/usr/soft/sort
-
解压安装包至指定目录下,我的是同目录下的 install 文件夹
tar -zxvf /usr/soft/sort/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz -C /usr/soft/install/
-
创立用户
groupadd mysql
-
创立组
useradd -r -g mysql mysql
-
将装置目录所有者及所属组改为 mysql
chown -R mysql.mysql /usr/soft/install/mysql-5.7.26-linux-glibc2.12-x86_64
-
进入 mysql 目录并创立 data 文件夹用于寄存数据库表之类的数据
cd /usr/soft/install/mysql-5.7.26-linux-glibc2.12-x86_64
mkdir data
-
筹备初始化,首先要装置依赖库 libaio
yum install libaio
-
筹备初始化,这一步务必记住初始密码,它位于输入日志的开端(数据库管理员长期明码)
留神这是一整条命令:
/usr/soft/install/mysql-5.7.26-linux-glibc2.12-x86_64/bin/mysqld --user=mysql --basedir=/usr/soft/install/mysql-5.7.26-linux-glibc2.12-x86_64/ --datadir=/usr/soft/install/mysql-5.7.26-linux-glibc2.12-x86_64/data --initialize
我的输入日志示例:
20xx-xx-xxTxx:xx:xx.493483Z 1 [Note] A temporary password is generated for root@localhost: 这里是初始的长期明码
-
配置零碎环境变量
- 编辑
vim /etc/profile
-
增加以下环境变量
export MYSQL_HOME=/usr/soft/install/mysql-5.7.26-linux-glibc2.12-x86_64
export PATH=$PATH:$MYSQL_HOME/bin
- 更新
source /etc/profile
- 编辑
-
配置 mysql 配置,这里最好查问一下所有配置的含意,能够参考 这篇文章
datadir=/usr/soft/install/mysql-5.7.26-linux-glibc2.12-x86_64/data
basedir=/usr/soft/install/mysql-5.7.26-linux-glibc2.12-x86_64
socket=/tmp/mysql.sock
(这行很重要,不然后续 socket 连贯会出问题)user=mysql
port=3306
innodb_file_ per_table=1
character-set-server=utf8
-
这里须要操作两个目录,用于配置文件中局部文件的运行,不然间接启动会报错,倡议先实现谬误解决方案中的代码
- 第一个谬误
mysqld_safe error: log-error set to /var/log/mariadb/mariadb.log
-
第一个谬误解决方案,新建并增加权限
mkdir /var/log/mariadb
touch /var/log/mariadb/mariadb.log
chown -R mysql:mysql /var/log/mariadb/
- 第二个谬误
mysqld_safe Directory '/var/lib/mysql' for UNIX socket file don't exists.
-
第二个谬误解决方案,新建并增加权限
mkdir /var/lib/mysql
chmod 777 /var/lib/mysql
- 参考文档一
- 参考文档二
- 第一个谬误
-
将 mysql 退出服务
cp /usr/soft/install/mysql-5.7.26-linux-glibc2.12-x86_64/support-files/mysql.server /etc/init.d/mysql
-
设置开机启动
chkconfig mysql on
-
增加软连贯
ln -s /usr/soft/install/mysql-5.7.26-linux-glibc2.12-x86_64/support-files/mysql.server /etc/init.d/mysql
ln -s /usr/soft/install/mysql-5.7.26-linux-glibc2.12-x86_64/bin/mysql /usr/bin/mysql
-
启动 mysql
service mysql start
-
应用初始密码登录
- 执行
mysql -u root -p
(socket 连贯) - 或者执行
mysql -u root -h 127.0.0.1 -p
(本地连接) - 输出明码,能够间接去后面保留的初始密码复制过去
- 执行
-
批改初始密码
use mysql;
(留神 mysql 语句应用英文;
完结!!!)mysql> update user set authentication_string=passworD("你的新密码") where user='root';
(mysql5.7 及以上版本须要应用authentication_string
字段来批改明码,有些博文并未提及,须要留神!!!)- 这个也可批改明码,成果同上
set password=password("你的新机密");
- 从新加载权限表
flush privileges;
- 退出 mysql
exit;
参考资料一 ———— linux 下 mysql 的装置与应用
参考资料二 ———— linux 装置 mysql 简略教程
参考资料三 ———— linux 下 mysql 配置文件 my.cnf 详解
参考资料四 ———— 启动 mysql 报错 mysqld_safe error: log-error set to /var/log/mariadb/mariadb.log
参考资料五 ———— mysqld_safe Directory‘/var/lib/mysql‘for UNIX socket file don‘t exists.
参考资料六 ———— linux 下将 mysql 退出到环境变量
参考资料七 ———— MySQL– 启动和敞开 MySQL 服务
参考资料八 ———— mysql 报错:You must reset your password using ALTER USER statement before executing this statement.
参考资料九 ———— Linux 下批改 Mysql 明码的三种形式
参考资料十 ———— 查看 MySQL 是否在运行
我是 fx67ll.com,如果您发现本文有什么谬误,欢送在评论区探讨斧正,感谢您的浏览!
如果您喜爱这篇文章,欢送拜访我的 本文 github 仓库地址,为我点一颗 Star,Thanks~ :)
转发请注明参考文章地址,非常感谢!!!