Ubuntu 安装mysql和简单操作

安装

安装mysql

ubuntu上安装mysql非常简单只需要几条命令就可以完成。

sudo apt-get install mysql-server          //服务端
sudo apt-get install mysql-client          //客户端
sudo apt-get install libmysqlclient-dev    //程序编译时链接的库

安装过程中会提示设置密码什么的,注意设置了不要忘了,安装完成之后可以使用如下命令来检查是否安装成功:

有个坑,可能没有出现输密码环节,参考 在Ubuntu 18.04 下安装mysql,没有初始密码,重设root密码

sudo netstat -tap | grep mysql

 通过上述命令检查之后,如果看到有mysql 的socket处于 listen 状态则表示安装成功。然后输入下面命令登陆:

mysql -u root -p 

-u 表示选择登陆的用户名, -p 表示登陆的用户密码,上面命令输入之后会提示输入密码,此时输入密码就可以登录到mysql。

或者这样登陆:

#服务启动后端口查询
sudo netstat -anp | grep mysql

#连接数据库
mysql -h 127.0.0.1 -P 3306 -uroot -p123456
#-h为远程IP,-P为端口号,-u为用户名,-p为密码

mysql默认端口就是3306.

管理

说明:通过这种方式安装好之后开机自启动都已经配置好,和命令行上的环境变量,无需手动配置。

安装好之后会创建如下目录:

数据库目录:/var/lib/mysql/ 

配置文件:/usr/share/mysql(命令及配置文件) ,/etc/mysql(如:my.cnf)

相关命令:/usr/bin(mysqladmin mysqldump等命令) 和/usr/sbin

启动脚本:/etc/init.d/mysql(启动脚本文件mysql的目录)

#服务管理
#启动
sudo service mysql start
#停止
sudo service mysql stop
#服务状态
sudo service mysql status

卸载

#首先使用以下命令删除MySQL服务器:
sudo apt-get remove mysql-server
#然后,删除随MySQL服务器自动安装的任何其他软件:
sudo apt-get autoremove
#卸载其他组件:
sudo apt-get remove <<package-name>>
#查看从MySQL APT存储库安装的软件包列表:
dpkg -l | grep mysql | grep ii

测试

登陆mysql数据库,然后通过 show databases; 就可以查看当前的数据库。

我们选择 mysql数据库就行下一步操作,使用use mysql 命令,显示当前数据库的表单:show tables 

写一个简单的程序来访问该数据库,实现 show tables 功能:

 1 #include <mysql/mysql.h>
 2 #include <stdio.h>
 3 #include <stdlib.h>
 4 int main() 
 5 {
 6     MYSQL *conn;
 7     MYSQL_RES *res;
 8     MYSQL_ROW row;
 9     char server[] = "localhost";
10     char user[] = "root";
11     char password[] = "mima";
12     char database[] = "mysql";
13     
14     conn = mysql_init(NULL);
15     
16     if (!mysql_real_connect(conn, server,user, password, database, 0, NULL, 0)) 
17     {
18         fprintf(stderr, "%s\n", mysql_error(conn));
19         exit(1);
20     }
21     
22     if (mysql_query(conn, "show tables")) 
23     {
24         fprintf(stderr, "%s\n", mysql_error(conn));
25         exit(1);
26     }
27     
28     res = mysql_use_result(conn);
29     
30     printf("MySQL Tables in mysql database:\n");
31     
32     while ((row = mysql_fetch_row(res)) != NULL)
33     {
34         printf("%s \n", row[0]);
35     }
36     
37     mysql_free_result(res);
38     mysql_close(conn);
39     
40     printf("finish! \n");
41     return 0;
42 }

编译代码的时候需要链接mysql的库,可以通过如下方式编译:

 g++ -Wall mysql_test.cpp -o mysql_test -l mysqlclient

然后运行编译好的代码:

 

可见结果和使用SQL语句 show tables 是一样的。

 

 

参考链接:

1、https://www.cnblogs.com/zhuyp1015/p/3561470.html?tdsourcetag=s_pctim_aiomsg

2、https://blog.csdn.net/qq_24326765/article/details/81917075?tdsourcetag=s_pctim_aiomsg

posted @ 2019-02-26 15:30  Rogn  阅读(48116)  评论(0编辑  收藏  举报