欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 文化 > mysql安装与使用

mysql安装与使用

2025/3/13 16:06:50 来源:https://blog.csdn.net/qq_35861227/article/details/146204605  浏览:    关键词:mysql安装与使用

mysql安装与使用

  1. 安装指定版本的mysql

    # 获得deb包
    wget https://dev.mysql.com/get/mysql-apt-config_0.8.12-1_all.deb
    # 安装deb包(中间选择5.7)
    sudo dpkg -i mysql-apt-config_0.8.12-1_all.deb
    # 更新apt仓库缓存
    sudo apt-get update
    # 如果更新报错,缺少key,则运行下列语句,替换对应缺少的key
    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 467B942D3A79BD29
    # 更新后查看当前mysql的可安装版本
    sudo apt-cache policy mysql-server
    # 安装 mysql5.7(安装过程需要配置输入 mysql root 的password)
    sudo apt install -f mysql-client=5.7* mysql-community-server=5.7* mysql-server=5.7*# 如果报错,先取消上面的安装
    sudo apt --fix-broken install
    # 然后安装对应的依赖
    # 安装libmecab2
    sudo apt install libmecab2
    # 安装libaio1
    sudo apt install libaio1
    # 安装mysql-community-client
    sudo apt install mysql-community-client=5.7*
    # 再次安装 mysql 5.7
    sudo apt install -f mysql-client=5.7* mysql-community-server=5.7* mysql-server=5.7*
    
  2. 安装mysql 8.0

    # 安装MySQL 8 只需这步(ubuntu22.04默认php版本为8.0)
    sudo apt install mysql-server -y
    # 检查状态
    sudo systemctl status mysql
    
  3. 配置mysql

    • 查看初始密码位置:

      sudo cat /etc/mysql/debian.cnf
      
    • 查找配置文件:

      sudo find / -name my.cnf
      sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
      
    • 配置更改:

      [mysqld]
      #port=3306
      # 服务端使用的字符集默认为utf8
      character-set-server=utf8
      # 时区配置
      default-time-zone = '+08:00'
      # 认证方式
      default_authentication_plugin=mysql_native_password
      # 连接地址
      bind-address = 0.0.0.0
      # 解决group_concant报错
      sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION[mysql]
      # 设置mysql客户端默认字符集
      default-character-set=utf8[client]
      default-character-set=utf8
      # 客户端保存密码
      user = backup_user
      password = password
      host = 127.0.0.1
      # 容器中配置
      #host = mysql-8.0
      

    4. mysql常用操作

    • 连接数据库:

      # 复制sql文件到容器(使用docker部署)
      sudo docker cp my_db.sql mysql-8.0:/
      # 进入数据库容器(使用docker部署)
      sudo docker exec -it mysql-8.0 bash
      # 连接数据库
      mysql -u root -p
      
    • 创建并导入数据库:

      -- 创建数据库
      create database my_db default character set utf8 collate utf8_general_ci;
      -- 选择数据库
      use my_db;
      -- 导入sql文件
      source my_db.sql;
      
    • 分配指定数据库权限:

      -- 创建数据库用户
      CREATE USER 'my_db_user'@'%' IDENTIFIED BY 'strong_password';
      -- 分配用户指定数据库权限
      grant all privileges on my_db.* to 'my_db_user'@'%';
      -- 刷新权限
      flush privileges;
      
    • 分配备份数据库权限:

      -- 创建专用备份账号
      CREATE USER 'backup_user'@'%' IDENTIFIED BY 'strong_password';
      -- 授予基础权限
      GRANT SELECT, SHOW VIEW, TRIGGER, LOCK TABLES, PROCESS ON *.* TO 'backup_user'@'%';
      -- 如果数据库含事件调度
      GRANT EVENT ON my_db.* TO 'backup_user'@'%';
      -- 刷新权限
      FLUSH PRIVILEGES;
      
    • 导出数据库:

      # 导出指定数据库
      sudo mysqldump -uroot -p my_db > ~/projectname.sql
      # 导出容器中指定数据库
      sudo docker exec mysql-8.0 mysqldump -uroot -p my_db > ~/my_db.sql
      # 导出所有数据库
      sudo mysqldump -uroot -p --all-databases > ~/all-databases.sql
      # 导出容器中所有数据库
      sudo docker exec mysql-8.0 mysqldump -uroot -p  --all-databases > ~/all-databases.sql
      

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词