Centos7 tar包安装mysql5.7

1、由于在线安装受制于网络环境,所以选择tar包编译安装。

      首先去mysql镜像站下载mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz

2、上传到centos

3、检查你所用的Linux下有没有安装过mysql,没有卸载干净

rpm -qa|grep -i mysql

如果存在,则需要先卸载掉,不然会出现覆盖错误。

yum remove  mysql mysql-server mysql-libs mysql-server;

find / -name mysql 将找到的相关东西delete掉;

rpm -qa|grep mysql(查询出来的东东yum remove掉)

4、创建mysql的用户组/用户, data目录及其用户目录

userdel mysql                                           # 删除用户

groupdel mysql                                          # 删除用户组名

mkdir /usr/local/mysql                                  # mysql的默认安装路径,建议不要更换,如果更换后续需要更新配置

mkdir /usr/local/mysql/data                             # mysql文件夹下创建文件夹data 

groupadd mysql                                          # 创建一个名为mysql的用户组      

useradd -g mysql -d /usr/local/mysql mysql              # 在用户组下创建用户

5、解压缩并转移

# tar -xzvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz             # 解压文件

# cd mysql-5.7.17-linux-glibc2.5-x86_64                           # 进入

# mv * /usr/local/mysql/

   

6、编译安装

cd /usr/local/mysql/

 

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

https://static.oschina.net/uploads/space/2017/0412/113503_nmXK_196698.png

记录上面成功安装后的密码,如上:hIE;k,h8gd#q,后续用到!

7、启动mysql服务

./support-files/mysql.server start

https://static.oschina.net/uploads/space/2017/0412/113755_557o_196698.png

截至目前,证明mysql已运行成功!!!

8、配置mysql

#进入mysql的安装目录支持文件目录

cd /usr/local/mysql//support-files

 

# 拷贝配置文件模板为新的mysql配置文件,

cp my-default.cnf /etc/my.cnf

 

#设置编码,可按需修改新的配置文件选项, 不修改配置选项, mysql则按默认配置参数运行.

#如下是我修改配置文件/etc/my.cnf 设置编码为utf8以防乱码

vim /etc/my.cnf

 

 

[mysqld]

 

basedir = /usr/local/mysql

datadir = /usr/local/mysql/data

 

character_set_server=utf8

init_connect='SET NAMES utf8'

 

 

[client]

default-character-set=utf8

此处需要注释掉##sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

否则后续登陆时会报异常:

mysql: [ERROR] unknown variable 'sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES'

9、配置mysql服务开机自动启动

# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld      # 拷贝启动文件到/etc/init.d/下并重命令为mysqld

# chmod 755 /etc/init.d/mysqld                                      # 增加执行权限

# chkconfig --list mysqld                                           # 检查自启动项列表中没有mysqld这个,

# chkconfig --add mysqld                                            # 如果没有就添加mysqld

# chkconfig mysqld on                                               # 用这个命令设置开机启动:

10mysql服务的启动/重启/停止

# service mysqld start                                               # 启动服务

# service mysqld restart                                             # 重启服务

# service mysqld stop                                                # 停止服务

11、修改mysql用户root的密码

mysql -u root -p

输入上边自动生成的密码,进入mysql环境

Mysql -u root -p

-bash : mysql :command not found

原因:这是由于系统默认会查找/usr/bin下的命令,如果这个命令不在这个目录下,当然会找不到命令,我们需要做的就是映射一个链接到/usr/bin目录下,相当于建立一个链接文件。


首先得知道mysql命令完整路径,比如我的Linuxmysql的路径是:/usr/local/mysql/bin/mysql,我们则可以这样执行命令:

 /usr/local/mysql/bin/mysql  -uroot这样执行命令,或者创建一个软链接

 ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql

再次尝试就可以进入了

https://static.oschina.net/uploads/space/2017/0412/150832_n8PT_196698.png

mysql> SET PASSWORD = PASSWORD('123456');             # PASSWORD()里面的123456 是设置的新密码,可以设置成你的密码

Query OK, 0 rows affected, 1 warning (0.00 sec)

Rows matched: 2 Changed: 0 Warnings: 1

mysql> ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;

Query OK, 0 rows affected, 1 warning (0.00 sec)

Rows matched: 2 Changed: 0 Warnings: 1

mysql> flush privileges;

Query OK, 0 rows affected, 1 warning (0.00 sec)

Rows matched: 2 Changed: 0 Warnings: 1

12、更改一些编码

mysql> use mysql

Reading table information for completion of table and column names

You can turn off this feature to get a quicker startup with -A

 

Database changed

mysql> \s

--------------

mysql  Ver 14.14 Distrib 5.7.17, for linux-glibc2.5 (x86_64) using  EditLine wrapper

 

Connection id:           5

Current database:        mysql

Current user:             root@localhost

SSL:                      Not in use

Current pager:           stdout

Using outfile:           ''

Using delimiter: ;

Server version:          5.7.17

Protocol version:        10

Connection:               Localhost via UNIX socket

Server characterset:     utf8

Db     characterset:      latin1

Client characterset:     utf8

Conn.  characterset:     utf8

UNIX socket:              /tmp/mysql.sock

Uptime:                   5 min 8 sec

 

Threads: 1  Questions: 44  Slow queries: 0  Opens: 136  Flush tables: 1  Open tables: 129  Queries per second avg: 0.142

--------------

 

mysql> show variables like 'character%';

+--------------------------+----------------------------------+

| Variable_name            | Value                            |

+--------------------------+----------------------------------+

| character_set_client     | utf8                             |

| character_set_connection | utf8                             |

| character_set_database   | latin1                           |

| character_set_filesystem | binary                           |

| character_set_results    | utf8                             |

| character_set_server     | utf8                             |

| character_set_system     | utf8                             |

| character_sets_dir       | /usr/local/mysql/share/charsets/ |

+--------------------------+----------------------------------+

8 rows in set (0.01 sec)

 

mysql>  SET character_set_database = utf8;

Query OK, 0 rows affected, 1 warning (0.00 sec)

 

mysql> show variables like 'character%';

+--------------------------+----------------------------------+

| Variable_name            | Value                            |

+--------------------------+----------------------------------+

| character_set_client     | utf8                             |

| character_set_connection | utf8                             |

| character_set_database   | utf8                             |

| character_set_filesystem | binary                           |

| character_set_results    | utf8                             |

| character_set_server     | utf8                             |

| character_set_system     | utf8                             |

| character_sets_dir       | /usr/local/mysql/share/charsets/ |

+--------------------------+----------------------------------+

8 rows in set (0.00 sec)

 

mysql> \s

--------------

mysql  Ver 14.14 Distrib 5.7.17, for linux-glibc2.5 (x86_64) using  EditLine wrapper

 

Connection id:           5

Current database:        mysql

Current user:             root@localhost

SSL:                      Not in use

Current pager:           stdout

Using outfile:           ''

Using delimiter: ;

Server version:          5.7.17

Protocol version:        10

Connection:               Localhost via UNIX socket

Server characterset:     utf8

Db     characterset:      utf8

Client characterset:     utf8

Conn.  characterset:     utf8

UNIX socket:              /tmp/mysql.sock

Uptime:                   6 min 20 sec

 

Threads: 1  Questions: 50  Slow queries: 0  Opens: 137  Flush tables: 1  Open tables: 130  Queries per second avg: 0.131

--------------

 

13mysql远程授权

mysql> grant all privileges on *.* to 'root'@'%' identified by '123456';

 

Query OK, 0 rows affected, 1 warning (0.00 sec)

14、验证,可能需要关闭防火墙

Service iptables stop

 

https://static.oschina.net/uploads/space/2017/0412/152259_8gkm_196698.png

 

  • 3
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
### 回答1: 安装步骤如下: 1. 首先,确保CentOS 7操作系统已经安装并且是最新版本。 2. 确认已经安装了必要的软件括GCC、C++、CMake、GMP、MPFR和MPC库:sudo yum install -y gcc-c++ cmake ncurses-devel libaio-devel openssl-devel zlib-devel libgcrypt-devel libedit-devel libxml2-devel libxslt-devel libicu-devel libcurl-devel libpng-devel libjpeg-devel libzip-devel bzip2-devel readline-devel systemd-devel 3. 下载MySQL 5.7.34 tar:wget -c https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.34.tar.gz 4. 解压tartar -zxvf mysql-5.7.34.tar.gz 5. 进入解压后的目录:cd mysql-5.7.34 6. 创建MySQL安装目录:sudo mkdir /usr/local/mysql 7. 为MySQL安装目录赋予权限:sudo chown -R root:root /usr/local/mysql 8. 创建MySQL数据目录:sudo mkdir /var/mysql 9. 为MySQL数据目录赋予权限:sudo chown -R mysql:mysql /var/mysql 10. 在MySQL安装目录下创建编译文件夹:cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ -DMYSQL_DATADIR=/var/mysql \ -DWITH_BOOST=/opt/boost \ -DWITH_SYSTEMD=1 \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_ARCHIVE_STORAGE_ENGINE=1 \ -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ -DWITH_FEDERATED_STORAGE_ENGINE=1 \ -DWITH_PARTITION_STORAGE_ENGINE=1 \ -DWITH_SSL=system \ -DENABLED_LOCAL_INFILE=1 \ -DSYSCONFDIR=/etc \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_unicode_ci . 11. 编译:make 12. 安装:sudo make install 13. 初始化MySQL数据库:sudo /usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql --datadir=/var/mysql 14. 启动MySQL服务:sudo systemctl start mysql 15. 修改root用户密码:sudo /usr/local/mysql/bin/mysqladmin -u root password 'new_password' 至此,MySQL 5.7.34的安装就完成了。 ### 回答2: CentOS 7 是一款非常稳定和可靠的操作系统,然而,对于一些新手来说,在安装 MySQL 时可能会遇到一些困难。如果您想在 CentOS 7 上安装 MySQL 5.7.34,则可以按照以下步骤进行操作: 步骤一:检查 tar 安装 MySQL 之前,您需要从官方网站下载 MySQL 5.7.34 的tar。请确保下载的tar处于完好无损的状态,可以使用以下命令进行检查: $ md5sum mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz (替换为您下载的文件名) 如果输出结果与官方网站上的MD5值匹配,则说明下载的文件没有被损坏或者篡改。 步骤二:解压 tar 接下来,您需要使用以下命令解压tar: $ tar -zxvf mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz 解压完成后进入解压文件夹: $ cd mysql-5.7.34-linux-glibc2.12-x86_64 步骤三:创建 MySQL 用户组和用户 为了保证 MySQL 运行的安全性,我们需要创建一个新的 MySQL 用户组和用户。可以使用以下命令来创建: $ groupadd mysql $ useradd -r -g mysql -s /bin/false mysql 步骤四:安装 MySQL 完成以上步骤之后,就可以使用以下命令执行 MySQL 的安装: $ mkdir -p /usr/local/mysql $ chown -R mysql:mysql /usr/local/mysql $ ./bin/mysqld --initialize --user=mysql $ ./bin/mysql_ssl_rsa_setup 执行完成后,MySQL 将会自动在 /usr/local/mysql/data 目录下生成root 用户的初始密码,您可以使用以下命令查看: $ cat /usr/local/mysql/data/*-host.err | grep "A temporary password" 步骤五:启动 MySQL 启动 MySQL 可以使用以下命令: $ ./support-files/mysql.server start 您也可以将 MySQL 自动启动脚本添加到系统服务中,使 MySQL 在系统启动时自动启动: $ cp support-files/mysql.server /etc/init.d/mysqld $ chkconfig --add mysqld $ chkconfig --level 345 mysqld on 步骤六:配置 MySQL 启动 MySQL 后,您需要修改 root 用户的密码,并且修改 MySQL 的配置文件,使 MySQL 具有更好的性能和安全性。 MySQL 配置文件位于 /etc/my.cnf 或者 /usr/local/mysql/etc/my.cnf。您可以根据需要修改配置文件来改变 MySQL 的运行参数。 总结 通过以上步骤,您可以在 CentOS 7 上安装 MySQL 5.7.34,并且调整 MySQL 的性能和安全性。这些步骤都相对简单,即使是 Linux 新手也能够轻松上手,希望本文能对您在 CentOS 7 上安装 MySQL 5.7.34 有所帮助! ### 回答3: 首先,我们需要从官网(https://dev.mysql.com/downloads/mysql/5.7.html)下载MySQL 5.7.34的tar,并解压至指定目录。 1. 解压 下载好tar后,我们需要将它解压到指定的目录中,这里以/opt目录为例: ``` tar -zxvf mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz -C /opt/ ``` 解压完毕后,我们可以看到/opt目录下多了一个mysql-5.7.34-linux-glibc2.12-x86_64目录。 2. 创建mysql用户组和用户 创建mysql用户组: ``` groupadd mysql ``` 创建mysql用户: ``` useradd -g mysql mysql ``` 3. 配置MySQL 创建一个新的MySQL配置文件my.cnf: ``` vi /etc/my.cnf ``` 在my.cnf中增加以下内容: ``` [mysqld] basedir=/opt/mysql-5.7.34-linux-glibc2.12-x86_64 datadir=/opt/mysql-5.7.34-linux-glibc2.12-x86_64/data socket=/opt/mysql-5.7.34-linux-glibc2.12-x86_64/mysql.sock user=mysql ``` 其中: - basedir:MySQL安装目录; - datadir:存放数据库文件的目录; - socket:MySQL使用的套接字文件; - user:运行MySQL服务的用户。 4. 初始化MySQL 使用mysqld_safe初始化MySQL: ``` cd /opt/mysql-5.7.34-linux-glibc2.12-x86_64 ./bin/mysqld_safe --user=mysql --datadir=/opt/mysql-5.7.34-linux-glibc2.12-x86_64/data & ``` 初始化完成后会生成一个临时密码,我们需要将它保存下来备用。 5. 修改root密码 登录MySQL,并修改root密码: ``` ./bin/mysql -uroot -p mysql> SET PASSWORD = PASSWORD('new password'); ``` 其中new password为新密码。 6. 配置systemd启动项 为了方便管理,我们可以将MySQL配置为systemd服务。 创建一个mysql.service文件: ``` vi /usr/lib/systemd/system/mysql.service ``` 输入以下内容: ``` [Unit] Description=MySQL After=network.target [Service] Type=forking ExecStart=/opt/mysql-5.7.34-linux-glibc2.12-x86_64/bin/mysqld_safe --user=mysql --datadir=/opt/mysql-5.7.34-linux-glibc2.12-x86_64/data ExecStop=/opt/mysql-5.7.34-linux-glibc2.12-x86_64/bin/mysqladmin -u root -p shutdown [Install] WantedBy=multi-user.target ``` 保存并退出。 启动MySQL服务: ``` systemctl start mysql ``` 设置MySQL自启动: ``` systemctl enable mysql ``` 7. 测试MySQL 使用以下命令测试MySQL是否正常运行: ``` ./bin/mysql -uroot -p ``` 输入之前设置的root密码,成功连接则说明MySQL安装成功。 以上就是在CentOS 7中使用tar安装MySQL 5.7.34的步骤。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值