linux下安装Mysql

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

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

###################### 分割线 ######################

权限控制

1、去除匿名用户

# 测试匿名用户登录
mysql -ux3

可以看到匿名用户可以登录,具有information_schema和test库的相关权限。

# 删除匿名用户,使用root用户登录数据库
delete from mysql.user where User='';
flush privileges;

再次测试匿名用户登录

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • mybatis连接mysql数据库插入中文乱码

    对于第一个问题,目前个人发现只能通过重新建库解决,建库的时候,选择UTF-8字符集。我试过修改现有数据库字符集为UFT

    Java架构师历程
  • MySQL表锁定问题

    lock tables 命令是为当前线程锁定表.这里有2种类型的锁定,一种是读锁定,用命令 lock tables tablename read;另外一种是写锁...

    Java架构师历程
  • sql必会基础4

    多数情况下,可以认为如果一个资源被锁定,它总会在以后某个时间被释放。而死锁发生在当多个进程访问同一数据库时,其中每个进程拥有的锁都是其他进程所需的,由此造成每个...

    Java架构师历程
  • 压力测试 tpcc-mysql

      TPCC-MYSQL是由percona发布一个用来测试数据库的压力工具,模拟一个电商的业务,

    小老鼠
  • centos下完全卸载mysql

    1、yum remove mysql mysql-server mysql-libs compat-mysql51

    似水的流年
  • ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

    使用如下方法即可解决,本人已验证可行。 #1.停止mysql数据库 /etc/init.d/mysqld stop #2.执行如下命令 mysqld_safe...

    用户1148881
  • Ubuntu安装mysql5.7(诲人不倦,记点干货)

    在ubuntu中,我们常用apt-get命令插件,其实,它也一直在更新相应的资源库,到目前为止,

    陈哈哈
  • Windows 10下mysql 64位 安装(mysql-5.7.11-winx64安装)

    Windows下mysql 64位 安装(mysql-5.7.11-winx64安装) 系统Windows10 安装包mysql-5.7.11-winx64.z...

    王小雷
  • Mysql数据库学习(四):常用Mysql C API 介绍和使用、封装一个访问Mysql数据库的类MysqlDB

    首先,环境是windows +  vs2008,Mysql数据库已经安装好,在使用之前,需要配置工程属性,附加包含目录添加 D:\Program Files\M...

    s1mba
  • CentOS安装mysql

    第二步,进入/usr/local/soft/目录,在里面执行wget 下载链接命令,或者是先下载到windows然后通过xftp上传到CentOS的该目录下,然...

    编程思录

扫码关注云+社区

领取腾讯云代金券