ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

Ubuntu安装-卸载Mysql

2022-09-12 14:31:12  阅读:245  来源: 互联网

标签:name chinese mysql Mysql MySQL Ubuntu student 卸载 math


瑞典MySQL AB公司开发,由SUN收购,而后SUN被甲骨文并购,目前属于Oracle公司。MySQL是一种关联数据库管理系统,由于其体积小、速度快、总体拥有成本低,目前被大量的公司所使用。MySQL软件采用了双授权政策,分为社区版和企业版。

1. Ubuntu安装Mysql

使用sudo apt安装Mysql

sudo apt install mysql-server-8.0

Ubuntu下安装mysql8.0之后,默认root用户是没有密码的,可以使用如下命令直接进入MySQL

sudo mysql -uroot

设置root密码

mysql> use mysql;
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';
mysql>flush privileges;
mysql> quit;

重启MySQL服务

sudo systemctl restart mysql.service

完成上面的步骤之后,就可以使用下面的命令来登录MySQL

sudo mysql -uroot -p

备注:头文件路径 /usr/include/mysql/ 库文件路径:/usr/lib/x86_64-linux-gnu/

Mysql启动、关闭、重启

// 启动MySQL
service mysqld start 
// 停止MySQL
service mysqld stop 
// 重启MySQL
service mysqld restart
// 查看MySQL运行状态
systemctl status mysql.service

安装mysql客户端

sudo apt install libmysqlclient-dev

2. Ubuntu卸载Mysql

首先在终端中查看MySQL的依赖项

dpkg --list|grep mysql

卸载mysql-common

sudo apt-get remove mysql-common

卸载mysql-server-8.0

sudo apt-get autoremove --purge mysql-server-8.0

清除残留数据

dpkg -l|grep ^rc|awk '{print$2}'|sudo xargs dpkg -P

再次查看MySQL的剩余依赖项

dpkg --list|grep mysql

继续删除剩余依赖项

sudo apt-get autoremove --purge mysql-apt-config

至此已经没有了MySQL的依赖项,彻底删除

3. 综合案例

3.1 准备数据

创建数据库:create database school;使用数据库:use school;创建学生表:

create table student(
id int,
name varchar(20),
chinese int,
english int,
math int
);

插入数据

insert into student(id,name,chinese,english,math) values(1, '范建',80,85,90);
insert into student(id,name,chinese,english,math) values(2,'罗况',90,95,95);
insert into student(id,name,chinese,english,math) values(3,'杜子腾',80,96,96);
insert into student(id,name,chinese,english,math) values(4,'范冰',81,97,85);
insert into student(id,name,chinese,english,math) values(5,'申晶冰',85,84,90);
insert into student(id,name,chinese,english,math) values(6,'郝丽海',92,85,87);
insert into student(id,name,chinese,english,math) values(7,'郭迪辉',75,81,80);
insert into student(id,name,chinese,english,math) values(8,'张飞',77,80,79);
insert into student(id,name,chinese,english,math) values(9,'任我行',95,85,85);
insert into student(id,name,chinese,english,math) values(10,'史泰香',94,85,84);

3.2 操作数据

编写如下测试程序

#include <iostream>
#include "mysql/mysql.h"

int main()
{
	const char* host="127.0.0.1";
	const char* user="root";
	const char* passwd="xxxxxx";
	const char* db="school";
	unsigned int port=3306;

	MYSQL *mysql=mysql_init(NULL);

	mysql=mysql_real_connect(mysql, host, user, passwd, db, port, nullptr, 0);
	
	const char* sql="select * from student";
	int ret=mysql_query(mysql, sql);

	MYSQL_RES* result=mysql_store_result(mysql);
	MYSQL_ROW row=nullptr;
	while(row=mysql_fetch_row(result))
	{
		std::string s;
		int num=mysql_field_count(mysql);
		for(int i=0;i<num-1;i++)
		{
			s=s+row[i]+"\t";
		}
		s+=row[num-1];
		std::cout<<s<<std::endl;
	}

	mysql_free_result(result);
	mysql_close(mysql);
	return 0;
}

编译需要链接libmysqlclient库

g++ main.cpp -o main -lmysqlclient

标签:name,chinese,mysql,Mysql,MySQL,Ubuntu,student,卸载,math
来源: https://www.cnblogs.com/jeapwu/p/16643317.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有