欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Ubuntu14.04 安装 mysql压缩包版(glibc)

程序员文章站 2022-03-05 10:09:35
...

Ubuntu14.04 安装 mysql压缩包版(glibc)

首先贴官方的安装指南: https://dev.mysql.com/doc/refman/5.7/en/binary-installation.html

一、下载mysql

1.进入清华的镜像站 https://mirror.tuna.tsinghua.edu.cn/
2.下载5.7版本 mysql/downloads/MySQL-5.7/
3.找到文件 mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz
4.解压并重命名至/usr/local/mysql

tar -zxf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz -C /usr/local
mv /usr/local/mysql-5.7.25-linux-glibc2.12-x86_64 /usr/local/mysql

二、配置mysql

1.为mysql创建用户

groupadd mysql
useradd -r -g mysql mysql

2.将/usr/local/mysql/的所有者设为mysql用户

chown -R mysql.mysql /usr/local/mysql

3.配置mysql的config文件

mkdir /etc/mysql
touch /etc/mysql/my.cnf
vim /etc/mysql/my.cnf

在my.cnf文件中写入下列内容

[mysql]
# 设置mysql客户端默认字符集 
default-character-set=utf8
socket=/usr/local/mysql/mysql.sock 
[mysqld]
#skip-name-resolve 
#设置3306端口 
port = 3306
socket=/usr/local/mysql/mysql.sock 
# 设置mysql的安装目录 
basedir=/usr/local/mysql
# 设置mysql数据库的数据的存放目录 
datadir=/usr/local/mysql/data
# 允许最大连接数 
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集 
character-set-server=utf8
# 创建新表时将使用的默认存储引擎 
default-storage-engine=INNODB
#lower_case_table_name=1 
max_allowed_packet=16M
#跳过权限认证
#skip-grant-tables

4.初始化mysql

sudo /usr/local/mysql/bin/mysqld --initialize --user=mysql

5.这里由于缺少libaio包会出现错误的提示
error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
对于linux系统分为 RedHat系列和Debian系列,其中 RedHat系列包括的系统有:Redhat、Centos、Fedora等,而Debian系列包括:Debian、Ubuntu等。他们的包管理器是不相同的,对于RedHat系列,使用yum包管理器,而对于Debian,使用apt包管理器

对于Ubuntu,则安装libaio的命令为sudo apt-get install libaio, 提示找不到libaio, 应为在apt包管理器上libaio的名字为libaio1, 所以正确的命令应该为

sudo apt-get update
sudo apt-get install libaio1

为了加快下载速度,可以更改apt的源
1.备份源文件

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

2.更改源

sudo vim /etc/apt/sources.list

将里面的内容全部删除,添加下面的内容

deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse 

6.添加mysql启动脚本软链接

$ sudo ln -s /opt/library/mysql/support-files/mysql.server /etc/init.d/mysql.server

7.将mysql的相关启动文件加入环境变量 vim /etc/profile 中加入下面内容

# mysql
export MYSQL_HOME=/usr/local/mysql
export PATH=$PATH:$MYSQL_HOME/bin:$PATH:$MYSQL_HOME/support-files

然后source /etc/profile
8.添加开机启动守护进程sudo update-rc.d mysql.server defaults

三、启动MySQL

1.启动MySQL

/etc/init.d/mysql.server start

2.ps检查进程ps -aux |grep mysql
3.用root用户登录 mysql -u root -p,正常情况会提示你让你设置初始密码
然后我在这里踩了一个坑
ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES)
解决办法: 首先设置无权限验证登录mysql,在mysql内修改root用户的密码
首先vim /etc/mysql/my.cnf中选择跳过权限认证
然后mysql进入shell命令界面

use mysql; 		# 使用mysql数据库
UPDATE user SET authentication_string=password("123456") WHERE user='root';

在mysql 5.7版本之间 命令应该为UPDATE user SET password=password("123456") WHERE user='root';
但是在mysql5.7之后,password字段不再使用了,应该改为authentication_string

4.当关闭mysql再次运行登录入mysql后,无论运行什么shell命令,比如show databases;都会提示
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement
解决办法: 重新设置mysql的root用户的密码

set password=password('new password'); #这里mysql5.7版本password字段又可以使用了 也不知道为什么
flush privileges;

到这里mysql已经安装配置完成了

相关标签: 大数据 大数据