linux下安装mysql服务器

参考:hhttps://blog.csdn.net/qq_37598011/article/details/93489404

一、安装mysql
  1. linux服务器下载
    浏览器地址:https://downloads.mysql.com/archives/community/
    在这里插入图片描述
  2. linux wget
    wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz
    
  3. 解压并移动
    tar -xzvf mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz 
    mv /opt/mysql-5.7.31-linux-glibc2.12-x86_64 /usr/local/mysql
    
二、权限问题

mkdir -p xx/y
mkdir -p xx/yy的好处就是一次可以创建多级文件夹,若xx文件夹不存在,则先创建xx文件夹,然后在xx文件夹下创建yy文件夹

  1. 建组和用户
    groupadd mysql
    useradd -r -g mysql mysql
  2. 创建数据目录并赋予权限
    mkdir -p  /data/mysql            
    chown mysql:mysql -R /data/mysql   
    
三、配置文件
  1. 配置文件my.cnf(vim可以新建)
    vim /etc/my.cnf
    
    内容如下:
    [mysqld]
    bind-address=0.0.0.0
    port=3306
    user=mysql
    basedir=/usr/local/mysql
    datadir=/data/mysql
    socket=/tmp/mysql.sock
    log-error=/data/mysql/mysql.err
    pid-file=/data/mysql/mysql.pid
    #character config
    character_set_server=utf8mb4
    symbolic-links=0
    explicit_defaults_for_timestamp=true
    
四、初始化
  1. 指定datadir 和用户 bin目录下
    ./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize
    
    2021-01-11T08:45:01.016629Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
    2021-01-11T08:45:02.074896Z 0 [Warning] InnoDB: New log files created, LSN=45790
    2021-01-11T08:45:02.197677Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
    2021-01-11T08:45:02.258567Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 4b68eef9-53e9-11eb-9f98-00163e23ff3c.
    2021-01-11T08:45:02.260205Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
    2021-01-11T08:45:02.682728Z 0 [Warning] CA certificate ca.pem is self signed.
    2021-01-11T08:45:02.728072Z 1 [Note] A temporary password is generated for root@localhost: Wpd)Itk0r,m!
    
  2. 最后一行为密码–>Wpd)Itk0r,m!

如果没有密码显示,可以到 vim /data/mysql/mysql.err里查找

五、启动
  1. 创建软链/或者复制

    ln -s /usr/local/mysql/bin/mysqlserver /etc/init.d/mysql 
    

    or

    cp /usr/local/mysql/bin/mysqlserver /etc/init.d/mysql 
    

    注意:如果bin下面沒有mysqlserver 可在supportfiles中找mysql-server 然後执行上面的软连接

  2. 启动

    /etc/init.d/mysql start
    

    查看启动是否成功:ps -ef|grep mysql

  3. 登录 进入bin目录,将初始化时的密码复制粘贴,密文,不可见,回车确认即可

    ./mysql -u root -p
    

    如果报错:mysql: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory。

    按照百度的方法都不成功,应该和系统版本有关,后来自己想到一个方法:yum install libncurses*,完美解决问题。
    

~~
4. 修改密码
再执行下面三步操作,然后重新登录【注意英文引号哦

SET PASSWORD = PASSWORD('123456');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;  
  1. navicate客户端连接
    连接不成功的原因

    1. 部分代码: 尤其要注意:如果执行不了,手动把引号打出来!!!
      use mysql;
      update user set host = ‘%’ where user =‘root’ and host =‘localhost’;
      update user set host = ‘%’ where user =‘root’ and host =‘localhost’;
      flush privileges;
  2. 如果操作完成后没有生效,可以ps找到进程号,kill后重启(在这里卡住一段时间)
    在这里插入图片描述

  3. 其他问题:

在控制台中使用mysql的select语句不显示结果集,确定表中有数据
在这里插入图片描述
第二行的“->”说明你的输入不完全,还在等你输入呢。具体到你的问题,sql命令要用“;”结尾。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值