linux下安装mysql

从https://www.cnblogs.com/xxoome/p/5864912.html转载


linux版本:CentOS7 64位

    1、下载安装包“mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz”    

# 安装依赖
yum -y install perl perl-devel autoconf libaio

    2、把下载的安装包移动到/usr/local/下。

    3、解压

tar zxvf mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz

    4、复制解压后的mysql目录到系统的本地软件目录

cp mysql-5.6.33-linux-glibc2.5-x86_64 /usr/local/mysql -r

    5、添加系统mysql组和mysql用户

groupadd mysql
useradd -r -g mysql -s /bin/false mysql
注意:Because the user is required only for ownership purposes, not login purposes, the useradd command uses the -r and -s /bin/false options to create a user that does not have login permissions to your server host. Omit these options if your useradd does not support them.

    6、进入安装mysql软件目录,修改目录拥有者为mysql用户

cd mysql/
chown -R mysql:mysql ./

    7、安装数据库,此处可能出现错误。

./scripts/mysql_install_db --user=mysql

    FATAL ERROR: please install the following Perl modules before executing scripts/mysql_install_db:
    Data::Dumper

#解决方法:
yum install -y perl-Data-Dumper

    8、修改当前目录拥有者为root用户

chown -R root:root ./

    9、修改当前data目录拥有者为mysql用户

chown -R mysql:mysql data

============== 到此数据库安装完毕 =============

    10、添加mysql服务开机自启动

添加开机启动,把启动脚本放到开机初始化目录。

复制代码
cp support-files/mysql.server /etc/init.d/mysql
# 赋予可执行权限
chmod +x /etc/init.d/mysql
# 添加服务
chkconfig --add mysql 
# 显示服务列表
chkconfig --list 
复制代码

如果看到mysql的服务,并且3,4,5都是on的话则成功,如果是off,则执行

chkconfig --level 345 mysql on

    11、启动mysql服务

#创建缺少的文件夹
mkdir /var/log/mariadb
service mysql start

正常提示信息:Starting MySQL. SUCCESS!

 

     12、把mysql客户端放到默认路径

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

注意:建议使用软链过去,不要直接包文件复制,便于系统安装多个版本的mysql

=================== 这是分割线 ==================

通过使用 mysql -uroot -p 连接数据库(默认数据库的root用户没有密码,这个需要设置一个密码)。

错误信息:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

解决方法打开/etc/my.cnf,看看里面配置的socket位置是什么目录。“socket=/var/lib/mysql/mysql.sock”

路径和“/tmp/mysql.sock”不一致。建立一个软连接:ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock

 到这里任务算是完成了。之后就可以创建数据库用户,然后使用数据库了。


碰到的一些问题:

最开始没有wget
yum -y install wget


./scripts/mysql_install_db --user=mysql报错,缺少组件
执行  yum -y install perl perl-devel
命令:yum-y install autoconf   

创建完成了,在程序里面连接发现还是没有权限,刚才我们只是创建了用户,还没有对这个用户分配权限;

grant all privileges on *.* to 'test'@'%'identified by '123456' with grant option;

 

all代表接受所有操作,比如 select,insert,delete....; *.* 代表所有库下面的所有表;% 代表这个用户允许从任何地方登录;为了安全期间,这个%可以替换为你允许的ip地址;

然后刷新mysql用户权限相关表;

flush privileges ;

 最后还要记得关闭防火墙,不然远程还是无法访问。

我以为就此收工了,等等,程序怎么还是连不上去,还是 access deny ;

难道端口不是3306吗,打开 mysql配置文件,是默认的3306,接着往下面看,发现一个关键地方;

bind-address           = 127.0.0.1

 

原来这里mysql默认绑定了本地ip,不接受其他来源;注释掉,重启mysql 一切OK;

还有两个常用操作;

修改指定用户密码

update mysql.user set password=password('新密码') where User="test" and Host="localhost";

 

删除用户

delete from user where User='test' and Host='localhost';

或是直接yum -y install perl perl-devel autoconf libaio


硬链接:
硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止“误删”的功能。只删除一个连接并不影响节点本身和其它的连接,只有当最后一个连接被删除后,文件的数据块及目录的连接才会被释放。也就是说,文件真正删除的条件是与之相关的所有硬连接文件均被删除。


还有如果把链接名创建为一个以.开头的隐藏文件,还能很好的隐藏自己的隐私(你们懂的..呵呵呵)。
软链接:
软链接又称之为符号连接(Symbolic Link)。软链接文件类似于Windows的快捷方式。它实际上是一个特殊的文件。在符号连接中,文件实际上是一个文本文件,其中包含的有另一文件的位置信息。


安装完后


mysql -u root -p进入mysql由于初始没有密码需要修改密码
use mysql
UPDATE user SET password=PASSWORD('123456') WHERE user='root';
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值