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