open麒麟系统安装sql的经验和步骤

麒麟、QT5.9.2、mysql-5.7.37,编译mysql驱动

一、MySQL安装

1. 下载mysql

https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.37-linux-glibc2.12-x86_64.tar.gz

2. 安装

安装经验:
我使用的qt版本是5.14.?? 忘记是多少了 遇到的问题不多

1.如果遇到缺少某些共享库的错误可以联网使用命令安装
apt-get install 共享库名*
然后  按  y  按 回车
为什么使用apt-get 命令而不用yum和rpm
因为麒麟系统软件库没有yum 和rpm命令  所以最终尝试了好久才发现这样安装的方法
例如  缺少libaio.so.1 则:
apt-get install libaio*
然后  按  y  按 回车 将所有的装上就好2.如果遇到其他问题或者安装上了库还是提示库没有装上等错误,重启系统尝试3。如果还有其他问题 那就自己探索一下吧 也可以联系我帮助一起探索。
1)添加用户和组
$> sudo groupadd mysql
$> sudo useradd -r -g mysql -s /bin/false mysql
安装mysql
$> sudo cd /usr/local
$> sudo tar zxvf mysql-5.7.37-linux-glibc2.12-x86_64.tar.gz
$> sudo ln -s mysql-5.7.37-linux-glibc2.12-x86_64 mysql
$> sudo cd mysql
$> sudo mkdir mysql-files
$> sudo chown mysql:mysql mysql-files
$> sudo chmod 750 mysql-files
$> sudo bin/mysqld --initialize --user=mysql
注:执行上条语句的时候,会自动生成一个root的默认初始密码,一定记住,如果看不懂,可以把结果复制下来保存一下。
$> sudo bin/mysql_ssl_rsa_setup
开机自动启动
$> sudo cp support-files/mysql.server /etc/init.d/mysql.server
$> sudo update-rc.d -f mysql.server defaults
设置数据库编码为utf8,编辑 “/etc/my.cnf” 文件,添加如下内容:
[client]
default_character_set=utf8mb4[mysqld]
collation-server = utf8mb4_unicode_ci
init-connect='SET NAMES utf8mb4'
character-set-server = utf8mb4
启动数据库
$> systemctl start mysql
添加mysql,到PATH,编辑文件
$> sudo vi /etc/profile
添加如下内容到文件结尾
MYSQL_HOME=/usr/local/mysql
PATH=$PATH:$MYSQL_HOME/bin
export PATH MYSQL_HOME
配置生效
$> source /etc/profile
使用的初始密码登录,修改默认密码
$> mysql -uroot -p
mysql> alter user 'root'@'localhost' identified by '密码';
mysql> flush privileges;
mysql> exit;

二、编译Qt的mysql驱动

1. 配置mysql的动态库

创建动态库符号连接
$> cd /usr/lib64
$> sudo ln -s /usr/local/mysql/lib/libmysqlclient.so.20 libmysqlclient.so.20 
编辑 /etc/ld.so.conf 文件
$> sudo echo /usr/local/mysql/lib >> /etc/ld.so.conf
$> sudo ldconfig

2. 编译驱动

进入mysql驱动源代码目录
$> cd/opt/Qt5.9.2/5.9.2/Src/qtbase/src/plugins/sqldrivers/mysql
$> sudo /opt/Qt5.9.2/5.9.2/gcc_64/bin/qmake "INCLUDEPATH+=/usr/local/mysql/include" "LIBS+=-L/usr/local/mysql/lib -lmysqlclient" mysql.pro
$> sudo make
拷贝编译好的驱动到插件目录
$> cd /opt/Qt5.9.2/5.9.2/gcc_64/plugins/sqldrivers
$> sudo mv libqsqlmysql.so libqsqlmysql.so.old 
$> sudo cp /opt/Qt5.9.2/5.9.2/Src/qtbase/src/plugins/sqldrivers/plugins/sqldrivers/libqsqlmysql.so
查看驱动依赖
$> cd /opt/Qt5.9.2/5.9.2/gcc_64/plugins/sqldrivers
$> ldd libqsqlmysql.so

注释,如果没有 not found 字样,就没有问题了。

三、创建数据库并授权

创建数据库
mysql> create database 数据库名称;
创建用户
mysql> CREATE USER 'sqluser'@'%' IDENTIFIED BY 'password';
授权
mysql> grant all privileges on 数据库名称.* to 'sqluser'@'%';

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/103782.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ATF(TF-A)/OPTEE之动态代码分析汇总

安全之安全(security)博客目录导读 1、ASAN(AddressSanitizer)地址消毒动态代码分析 2、ATF(TF-A)之UBSAN动态代码分析 3、OPTEE之KASAN地址消毒动态代码分析

Python中使用IDLE调试程序

在IDLE中,使用菜单栏中的“Debug”对IDLE打开的python程序进行调试。 1 打开调试开关 选择IDLE菜单栏的“Debug->Debugger”,如图1①所示;此时在IDLE中会显示“[DEBUG ON]”,即“调试模式已打开”,如图1②所示&am…

JAVA加密算法

一、AES 高级加密标准(AES,Advanced Encryption Standard)为最常见的对称加密算法(微信小程序加密传输就是用这个加密算法的)。对称加密算法也就是加密和解密用相同的密钥,具体的加密流程如下: 加密:明文P通过AES加密函数和密匙K进行加密,得…

Go HTTP 调用(上)

哈喽大家好,我是陈明勇,今天分享的内容是 Go HTTP 调用。如果本文对你有帮助,不妨点个赞,如果你是 Go 语言初学者,不妨点个关注,一起成长一起进步,如果本文有错误的地方,欢迎指出&am…

数据结构八大排序Java源码

文章目录 [1]. 堆排序[2]. 冒泡排序[3]. 选择排序[4]. (直接)插入排序[5]. 希尔排序(属于插入算法)[6]. 快速排序[7]. 归并排序[8]. 基数排序 王道数据结构排序讲解 排序算法最佳时间复杂度最坏时间复杂度平均时间复杂度空间复杂度…

【ftp篇】 vsftp(ftp) 每天生成一个动态密码

这里写目录标题 前言为什么需要动态每日生成一个密码?编写脚本定时任务java对应的代码 前言 社长最近接到一个需求,需要ftp每天动态生成一个密码 为什么需要动态每日生成一个密码? 在软硬件通讯过程中,就以共享单车为例&#xff0…

vsCode 忽略 文件上传

1 无 .gitignore 文件时,在项目文件右键,Git Bash 进入命令行 输入 touch .gitignore 生成gitignore文件 2 、在文件.gitignore里输入 node_modules/ dist/ 来自于:vscode git提交代码忽略node_modules_老妖zZ的博客-CSDN博客

深度学习_1_基本语法

数据结构 代码: import torchx torch.arange(12)##产生长度为12的一维张量print(x)##X x.resize(3, 4)##被弃用##print(X)y torch.reshape(x, (3, 4))##修改向量为矩阵,一维变二维print(y)print(y.size())xx torch.zeros((2, 3, 4))##三维矩阵&…

GEE:基于GLDAS数据集分析土壤湿度的时间序列变化

作者:CSDN @ _养乐多_ 本篇博客将介绍如何使用Google Earth Engine(GEE)进行土壤湿度数据的分析。我们将使用NASA GLDAS(Global Land Data Assimilation System)数据集,其中包括了关于土壤湿度的信息。通过该数据集,我们将了解土壤湿度在特定区域和时间段内的变化,并生…

#力扣:2236. 判断根结点是否等于子结点之和@FDDLC

2236. 判断根结点是否等于子结点之和 一、Java /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}* TreeNode(int val) { this.val val; }* TreeNode(int val, TreeNo…

Vue、js底层深入理解笔记(二)

1.跨域 跨域原因 > 浏览器的同源策略 属于一种保护机制 如果没有同源策略的保护 一般用来处理登录cookie、服务端验证通过后会在响应头加入Set-Cookie字段、下次再发请求的时候,浏览器会自动将cookie附加在HTTP请求的头字段Cookie中、也就是说跳转到其他网站你也…

Apache atlas 元数据管理治理平台使用和架构

1、前言 Apache Atlas 是托管于 Apache 旗下的一款元数据管理和治理的产品,目前在大数据领域应用颇为广泛,可以很好的帮助企业管理数据资产,并对这些资产进行分类和治理,为数据分析,数据治理提供高质量的元数据信息。…

企业电子招投标采购系统——功能模块功能描述+数字化采购管理 采购招投标

功能描述 1、门户管理:所有用户可在门户页面查看所有的公告信息及相关的通知信息。主要板块包含:招标公告、非招标公告、系统通知、政策法规。 2、立项管理:企业用户可对需要采购的项目进行立项申请,并提交审批,查看所…

OJ第三篇

文章目录 随机链表的复制 随机链表的复制 链接:随机链表的复制 这个题简单而言就是它给一个链表,每个结点包含两个指针,分别指向下一个和一个随机的结点(也有可能指向空),你要做的就是复制这个链表,使你创…

深入了解基数排序:原理、性能分析与 Java 实现

基数排序(Radix Sort)是一种非比较性排序算法,它根据元素的每个位上的值来进行排序。基数排序适用于整数或字符串等数据类型的排序。本文将详细介绍基数排序的原理、性能分析及java实现。 基数排序原理 基数排序的基本原理是按照低位先排序&…

基于PLC的机械手控制系统设计

目录 摘 要......................................................................................................................... 1 第一章 绪论.............................................................................................................…

vue中的生命周期有什么,怎么用

Vue.js 的生命周期(lifecycle)是指 Vue 实例从创建到销毁的整个过程。Vue.js 常用的生命周期包括: beforeCreate:在实例被创建之前调用,此时组件的数据观测和事件机制都未被初始化。created:在实例创建完成…

【Acwing187】导弹防御系统(LIS+剪枝+贪心+dfs+迭代加深)

题目描述 看本文需要准备的知识 1.最长上升子序列(lis)的算法思想和算法模板 2.acwing1010拦截导弹(lis贪心)题解 本题题解,需要知道这种贪心算法 3.简单了解dfs暴力搜索、剪枝、搜索树等概念 思路讲解 dfs求最…

TCP/IP(七)TCP的连接管理(四)全连接

一 全连接队列 nginx listen 参数backlog的意义 nginx配置文件中listen后面的backlog配置 ① TCP全连接队列概念 全连接队列: 也称 accept 队列 ② 查看应用程序的 TCP 全连接队列大小 实验1: ss 命令查看 LISTEN状态下 Recv-Q/Send-Q 含义附加:…