我们在Windows系统中安装过MySQL数据库,那么如何在Ubuntu系统中安装呢?下面我给大家分享演示一下。
工具/材料Ubuntu
01首先我们需要登录MySQL的官方平台下载Ubuntu的安装包,如下图所示,大家选择红框中的安装包即可
02接下来打开Ubuntu中的命令行,执行apt install numactl安装MySQL的依赖库numactl,如下图所示
03然后执行apt install命令继续安装依赖包libaio-dev,如下图所示
04接下来我们运用tar命令解压刚才下载的mysql压缩包,如下图所示
05接着我们需要通过groupadd命令给Ubuntu系统添加一个mysql的用户组,如下图所示
06然后添加一个mysql用户到mysql用户组中,如下图所示,这里主要用了useradd命令
07接下来我们需要将解压后的压缩包移动到/usr/local/mysql文件夹下面,如下图所示
08然后给移动后的文件夹添加目录权限到mysql用户组,如下图所示
09接下来我们就可以对mysql数据库执行初始化命令了,如下图所示
10最后我们在命令行开启MySQL服务即可完成数据库的安装了,如下图所示
在ubuntu中,我们常用apt-get命令插件,其实,它也一直在更新相应的资源库,到目前为止,
apt-get资源库中 mysql 的最新版本为:mysql-5.7.29
因此,我们可以直接通过最新版本apt-get命令安装mysql57即可,避免手动安装的许多麻烦;
本文将带你一起走一遍原原本本的安装流程,如果你,正准备在ubuntu系统上安装mysql57,那么恭喜你,这篇文章必然会帮到你。如果遇到什么麻烦,尽快在下方留言,我,会及时给老兄诊断下问题所在。
1.查看mysql有没有已安装的依赖包
复制
先卸载mysql-common
复制
再执行:
复制
然后继续用 dpkg --list|grep mysql 查看,还剩什么就卸载什么;
二、安装mysql
复制
复制
Ubuntu16 - Ubuntu18安装mysql5.7未提示输入密码,mysql默认密码为空;直接登录即可;
如果使用mysql -uroot -p 命令连接mysql时,报错
复制
1.此时修改root的默认密码即可: 1.进入到/etc/mysql/ 目录下,查看debian.cnf文件
2.找到用户名,密码 ,使用此账号登录mysql 用户名:debian-sys-maint 密码:UsIgysQBZbL6X4qW 登录: mysql -udebian-sys-maint -pUsIgysQBZbL6X4qW
3.修改root用户的的密码 这里是关键点,由于mysql5.7没有password字段,密码存储在authentication_string字段中,password()方法还能用在mysql中执行下面语句修改密码:
复制
4.修改完密码,需要重启mysql;再次登录就可以了;
进入mysql命令行输入:show variables like 'character%'
我们需要把database和server调成utf8即可;
首先我们找到mysqld.cnf文件:find / -name mysqld.cnf
修改mysqld.cnf内容:在相应标签下添加即可(如下图), 没有[mysql]标签就加上 ;
复制
保存后重启mysql;service mysql restart重启后再次登陆mysql命令行
输入show variables like 'character%'
Ubuntu上安装MySQL非常简单只需要几条命令就可以完成。1. sudo apt-get install mysql-server
2. apt-get isntall mysql-client
3. sudo apt-get install libmysqlclient-dev
安装过程中会提示设置密码什么的,注意设置了不要忘了,安装完成之后可以使用如下命令来检查是否安装成功:
sudo netstat -tap | grep mysql
通过上述命令检查之后,如果看到有mysql 的socket处于 listen 状态则表示安装成功。
登陆mysql数据库可以通过如下命令:
mysql -u root -p
-u 表示选择登陆的用户名, -p 表示登陆的用户密码,上面命令输入之后会提示输入密码,此时输入密码就可以登录到mysql。
然后通过 show databases就可以查看当前的数据库。
我们选择 mysql数据库就行下一步 *** 作,使用use mysql 命令,显示当前数据库的表单:show tables
写一个简单的程序来访问该数据库,实现 show tables 功能:
#include <mysql/mysql.h>
#include <stdio.h>
#include <stdlib.h>
int main()
{
MYSQL *conn
MYSQL_RES *res
MYSQL_ROW row
char server[] = "localhost"
char user[] = "root"
char password[] = "mima"
char database[] = "mysql"
conn = mysql_init(NULL)
if (!mysql_real_connect(conn, server,user, password, database, 0, NULL, 0))
{
fprintf(stderr, "%s\n", mysql_error(conn))
exit(1)
}
if (mysql_query(conn, "show tables"))
{
fprintf(stderr, "%s\n", mysql_error(conn))
exit(1)
}
res = mysql_use_result(conn)
printf("MySQL Tables in mysql database:\n")
while ((row = mysql_fetch_row(res)) != NULL)
{
printf("%s \n", row[0])
}
mysql_free_result(res)
mysql_close(conn)
printf("finish! \n")
return 0
}
编译代码的时候需要链接mysql的库,可以通过如下方式编译:
g++ -Wall mysql_test.cpp -o mysql_test -lmsqlclient
然后运行编译好的代码:
可见结果和使用SQL语句 show tables 是一样的。
make it simple, make it happen
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)