Linux下安装MySQL数据库(压缩包方式安装)

原文地址:

https://www.cnblogs.com/xiaotao726/p/6562265.html

转载的目的是为了修改其中几个地方。因为我照着步骤一步一步来,有个别地方走不通。

搜索了其他方法终于完成。所以复制过来修改其中个别走不通的。

1、这里我将Mysql安装在/usr/local/mysql目录里面,也可以安装在其他地方;

mkdir /usr/local/mysql

2、下载MySQL压缩包    不同的版本地址不一样。可以考虑安装其他版本的。

      如果有已经下载好的压缩包,跳过。

wget http://dev.MySQL.com/get/Downloads/MySQL-5.7/mysql-5.7.11-Linux-glibc2.5-x86_64.tar.gz 

// 如果上边的命令不行的话 可以使用下边的命令
curl -O -L http://dev.MySQL.com/get/Downloads/MySQL-5.7/mysql-5.7.11-Linux-glibc2.5-x86_64.tar.gz 

3、解压并复制     此时,一般情况下,你所在位置就是压缩包所在路径。

    这个地方说的复制其路径,是第一步你创建好的目录。如果你解压的地方就是想安装的路径。那么第一步和这一步的复制都可以省略。直接给解压包改名。mv  mysql-5.7.11-Linux-glibc2.5-x86_64     mysql 

tar -xvf mysql-5.7.11-Linux-glibc2.5-x86_64.tar.gz
mv mysql-5.7.11-Linux-glibc2.5-x86_64/* /usr/local/mysql/

4、创建data目录  同理,如果第三步你只是改名,那么这里创建文件夹的路径也就是 mkdir  mysql/data

mkdir /usr/local/mysql/data

5、创建mysql用户组及其用户  如果当前用户没权限,需要切换超级管理员 一般都是root用户在操作吧~~

groupadd mysql
useradd -r -g mysql mysql

6、初始化数据

这里和原文有区别,初始化命令已经在新版本中更新5.6用原文命令,5.7以后用新命令,下面的已经更新

[root@localhost mysql] ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
下面是显示结果:
2016-01-20 02:47:35 [WARNING] mysql_install_db is deprecated. Please consider switching to mysqld --initialize
2016-01-20 02:47:45 [WARNING] The bootstrap log isn't empty:
2016-01-20 02:47:45 [WARNING] 2016-01-19T18:47:36.732678Z 0 [Warning] --bootstrap is deprecated. Please consider using --initialize instead
2016-01-19T18:47:36.750527Z 0 [Warning] Changed limits: max_open_files: 1024 (requested 5000)
2016-01-19T18:47:36.750560Z 0 [Warning] Changed limits: table_open_cache: 431 (requested 2000)

7、复制配置文件到 /etc/my.cnf

cp -a ./support-files/my-default.cnf /etc/my.cnf   ( 选择y ) 

8、MySQL的服务脚本放到系统服务中


cp -a ./support-files/mysql.server /etc/init.d/mysqld


修改my.cnf文件 
vim  /etc/my.cnf  

按 i  进入插入状态   修改结束 按Esc退出插入状态, 使用命令    :wq  保存退出。冒号不能少。 

# These are commonly set, remove the # and set as required.
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
# server_id = .....
socket = /tmp/mysql.sock
character-set-server = utf8
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M 

9、创建In

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

10、启动服务

service mysqld start 

11、初始化密码

mysql5.7会生成一个初始化密码,在root中.mysql_secret文件中。

[root@localhost ~]# cat /root/.mysql_secret
显示结果:
# Password set for user 'root@localhost' at 2017-03-16 00:52:34 
ws;fmT7yh0CM    ←【这个随机密码记着,下面登录用。如果忘记了,再次执行本步骤命令即可】

12、登录并修改密码

这里有改动,原文执行命令会报错: mysql :未找到命令 。也就是说第九步创建的连接并不管用。

所以我们需要用全路径登录   /usr/local/mysql/bin/mysql -u root -p      ,然后输入前面生成的随机密码

[root@localhost ~]# /usr/local/mysql/bin/mysql -u  root -p

alter user root@localhost identified by 'tiger';     这一步,我把 tiger 随便换了一个其他字符。我以为这个是用户名或者密码。
结果报错:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server 
version for the right syntax to use near 'indentified by 'aaaa'' at line 1
这时候,执行任何命令都会提示:
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
就是必须先重置密码。
所以要执行一下命令: 
SET PASSWORD = PASSWORD("new password");
 flush privileges;    这一步,我没执行。也没什么影响。写这行字的时候执行了一下,也没什么。

13、退出重新登录,完成

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.11 sec)

OK

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 8
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值