ToB企服应用市场:ToB评测及商务社交产业平台

标题: 国产Linux麒麟体系-安装mysql8.0 [打印本页]

作者: 十念    时间: 2024-7-30 10:36
标题: 国产Linux麒麟体系-安装mysql8.0
1.查察体系信息

  1. cat /etc/os-release
复制代码

2.查察并卸载自带的mariadb

  1. #查看现有版本,mariadb和mysql都要查:
  2. rpm -qa|grep mariadb
  3. rpm -qa|grep mysql
复制代码

  1. rpm -e --nodeps mariadb-connector-c-3.0.6-7.ky10.x86_64
复制代码
再次检查下有没有mysql的文件,并将一下文件删除,否则会堕落


删除后如下下图

3.官网下载MYSQL安装包

mysql官网下载地址
        3.1选择对应的mysql版本


因为Kylinos Server V10 就是基于CentOS 8开发而来,所以选择 Red Hat Enterprise Linux 8 / Oracle Linux 8 (x86, 64-bit), RPM Bundle
        3.2上传至服务器并解压

        在此之前最好先将磁盘挂载可以参考一下文章
        Linux挂载磁盘教程
        

  1. tar xvf mysql-8.0.37-1.el8.x86_64.rpm-bundle.tar
复制代码
解压如下

在大多数情况下,您须要安装 mysql-community-server, mysql-community-client, mysql-community-client-plugins, mysql-community-libs, mysql-community-icu-data-files, mysql-community-common, 以及 mysql-community-libs-compat .
这里解释一下各个安装文件

4.安装Mysql

安装顺序如下
  1. rpm -ivh mysql-community-common-8.0.37-1.el8.x86_64.rpm
  2. rpm -ivh mysql-community-client-plugins-8.0.37-1.el8.x86_64.rpm
  3. rpm -ivh mysql-community-libs-8.0.37-1.el8.x86_64.rpm
  4. rpm -ivh mysql-community-client-8.0.37-1.el8.x86_64.rpm
  5. rpm -ivh mysql-community-icu-data-files-8.0.37-1.el8.x86_64.rpm
  6. rpm -ivh mysql-community-devel-8.0.37-1.el8.x86_64.rpm
  7. rpm -ivh mysql-community-server-8.0.37-1.el8.x86_64.rpm
复制代码
安装后通过mysql -V查察版本信息

4.1编辑my.cnf文件

  1. vi /etc/my.cnf
复制代码

以下是注释和修改点,按需修改和添加
  1. datadir=/data/mysql                         #数据文件目录
  2. socket=/data/mysql.sock                     #socket文件路径
  3. pid_file=/data/mysqld.pid                   #MySQL服务器进程ID文件的路径
  4. port=6612                                   #端口
  5. log_error=/data/log/mysqld.log              #运行日志路径
  6. server_id = 168710                          #MySQL实例唯一标识
  7. log_bin = /data/binlog/mysql-binlog         #根据安装路径设置存放binlog存放位置
  8. binlog_expire_logs_seconds=2592000          #默认二进制日志过期时间为 2592000 秒,等于 30 天(30*24*60*60 秒)
  9. innodb_redo_log_capacity = 2048M            #Redo Log的总容量,8.0.30版本引入
  10. innodb_log_buffer_size = 32M                #日志文件的缓冲区的大小
  11. innodb_flush_log_at_trx_commit = 1          #默认设置为1,是完全符合 ACID 标准所必需的。日志在每次事务提交时写入并刷新到磁盘
  12. sync_binlog = 1                             #每次事务提交时同步二进制日志
  13. open_files_limit = 65535                    #能打开的文件数上限
  14. table_open_cache = 1024                     #指定一次InnoDB可以打开的最大文件数
  15. innodb_buffer_pool_size = 12G               #内存的80% ,比如系统内存为16G(通过free -g查看),设置为12G
  16. innodb_purge_threads = 8                    #控制回滚段(Undo Segment)清理线程的数量.设置为CPU核数(通过lscpu查看),比如8核,就设置为8
  17. innodb_write_io_threads = 8                 #控制写入 I/O 操作的线程数,值同上
  18. innodb_read_io_threads = 8                  #控制读取 I/O 操作的线程数,值同上
  19. innodb_max_undo_log_size = 1G               #undo阈值,默认值1G
  20. lower_case_table_names = 1                  #表名不区分大小写
  21. max_allowed_packet = 1G                     #消息缓冲区大小
  22. character_set_server = utf8mb4              #字符集
  23. transaction_isolation = REPEATABLE-READ     #事务隔离级别,可重复读。默认值为 REPEATABLE-READ.
  24. slow_query_log = 0                          #慢查询功能(0/OFF:关闭;1/ON:开启)
  25. long_query_time = 2                         #超过2秒的sql输出到日志
  26. max_connections = 2000                      #最大连接数
  27. log_bin_trust_function_creators=1           #允许任何用户(包括没有 SUPER 特权的用户)创建或修改存储过程、函数创建,根据实际情况设置
  28. sql_mode="NO_ENGINE_SUBSTITUTION"           #服务器SQL模式,模式会影响MySQL支持的SQL语法及其执行的数据验证检查。根据实际情况设置
  29. group_concat_max_len=1024000                #GROUP_CONCAT函数允许的最大结果长度(以字节为单位)。默认值为 1024.
  30. skip-name-resolve=OFF                       #是否在检查客户端连接时解析主机名(OFF/ON),根据实际情况设置
  31. log_timestamps=SYSTEM                       #日志的显示时间和系统时间保持一致
  32. [client]
  33. socket=/data/mysql.sock                     #socket文件路径
复制代码
设置开机自动启动

  1. systemctl start mysqld    #启动 MySQL
  2. systemctl stop mysqld     #关闭 MySQL
  3. systemctl restart mysqld  #重启 MySQL   
  4. systemctl status mysqld   #查看 MySQL 状态
  5. systemctl enable mysqld   #设置开机自启
复制代码
启动成功

查察密码
  1. cat /var/log/mysqld.log | grep root@localhost
复制代码

使用MySQL下令登录后首先更改下密码
  1. alter user root@localhost identified by 'xxxxxxxx';
复制代码
创建数据库
  1. CREATE DATABASE xxxx_project;  
复制代码
导入数据库
  1. mysql -u root -p xxxx< xxxx.sql
复制代码
创建远程用户
  1. create user '新用户名'@'允许的来源ip' identified by '新用户的密码';
复制代码
查察是否创建成功
  1. select host, user, plugin from user;
复制代码
注意如果出现远程无法查察数据库的情况,就要给新建的帐号添加权限
将以下几项调整为Y

下令如下
  1. update user set Select_priv='Y' where user='root' and host='你的IP';
  2. update user set INSERT_priv='Y' where user='root' and host='你的IP';
  3. update user set UPDATE_priv='Y' where user='root' and host='你的IP';
  4. update user set Delete_priv='Y' where user='root' and host='你的IP';
  5. update user set Create_priv='Y' where user='root' and host='你的IP';
  6. 或者全部授权
  7. GRANT ALL PRIVILEGES ON *.* TO 'root'@'你的IP' WITH GRANT OPTION;
复制代码
末了记得刷新下更新
  1. FLUSH PRIVILEGES;
复制代码


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4