zoukankan      html  css  js  c++  java
  • Linux下安装mysql(1)(CentOS)

    标题是(1)也就是说这次是基础安装,这种方式安装,没有组的创建,权限管理,配置文件更改等,仅仅是最基本的安装,适合第一次在linux上安装mysql的新手

    1.准备好安装包(Linux-Generic表示对各种linux发行版本通用的mysql安装包)

    2.解压缩(既然第一次安装,目录随便选)

    tar -zxvf mysql-8.0.11-linux-glibc2.12-x86_64.tar.gz  -C /usr/local

    3.进入目录,改名便于操作

    cd /usr/local
    mv mysql-8.0.11-linux-glibc2.12-x86_64 mysql
    cd mysql/bin

    4.此时已经进入到bin目录下了

    执行./mysqld --initialize --user=mysql (以mysql用户初始化数据库)

    首先这个命令可能会报错

    显然mysql这个用户不存在,至于为什么使用mysql这个用户初始化,下面讲.执行useradd mysql创建mysql用户即可(默认生成了mysql组)

    创建完成后重新执行./mysqld --initialize --user=mysql ,红色的那行是你的root用户的临时密码

    到这里初始化数据库完成,这里可以在执行一下./mysql_ssl_rsa_setup 让你的mysql使用ssl加密连接,(rsa应该是非对称加密算法,记得上学期电商系统安全管理讲到过的)

    5.启动mysql

    执行 ./mysqld_safe --user=mysql &(以后台方式启动)

    会报这个错误,如果你没注意到,待会直接netstat -anp|grep 3306啥也没有

    可以看到似乎是mysqld.pid这个文件出了问题

    cat下,发现没有,但是find找到了

    把路径复制下,同时执行vim /etc/my.cnf 打开配置文件(注意备份)

    把pid-file的路径更改为你复制的路径

    看到那个user=mysql没?这也是为什么增加mysql这个用户并且用--user=mysql初始化和启动的原因了

     更改好,保存退出,然后重新执行

    ./mysqld_safe  --user=mysql & 启动数据库完成

    6.连接

    到目前位置mysql启动完成了,接下来就是连接了

    我做到这里时,ok没问题了然而执行连接数据库的命令后,又报了个错误,大概意思是没办法通过socket建立连接

     老办法,find下,似乎是和mysqld.pid同样的问题,路径不对,挂个软连接上去即可

    重新登录成功进入,但是还没完,想看数据库,不存在的,必须修改密码,接下来就是很坑的一段记录了,

    请不要使用更改user表从而更改密码或者set password...这种更改方法,我全试过了都没用

    请执行
    ALTER USER "root"@"localhost" IDENTIFIED BY  "123";修改密码退出使用新密码重新登录,可以看到开启了ssl加密,也可以查看数据库了

    7.总结

    ①增加mysql用户

    ②初始化./mysqld --initialize --user=mysql  (注意保存此时的临时密码)

    ③启动前先要修改/etc/my.cnf中(注意备份)的pid-file的路径

    ④连接数据库之前给mysql.sock挂上软连接,不然找不到

    ⑤更改密码..

    注意上面初始化,启动,连接数据库都是在mysql的bin目录下执行的

    最后,想说的是,这种安装只能说是装上去了,并且成功运行了,但是如果你注意观察应该能发现问题,比如权限,全程都是root,mysql目录下的所有文件都是root组

    我们需要一个mysql组,来对其进行管理此外还有/etc/my.cnf中其他一些配置选项的更改,全局mysql,还有我遇到的其他一些异常,so只能再写一篇(2)了

     连接Linux下安装mysql(2)

  • 相关阅读:
    notepad++ remove duplicate line
    notepad++ $ ^
    中文名: 交通事故责任认定, 英文名称: Traffic accident responsibility identification
    java 反射 获取Class对象的三种方式
    [转]java中byte转换int时为何与0xff进行与运算
    java中byte取值范围为什么是 -128到127
    bytes2HexString
    DBCS 从256开始
    android开发之使用拼音搜索汉字
    电脑故障,路由器及网络
  • 原文地址:https://www.cnblogs.com/tele-share/p/9107874.html
Copyright © 2011-2022 走看看