ubuntu mysql 连接 ubuntu连接wifi命令
Ubuntu下远程访问MySQL数据库_MySQL
Ubuntu环境下远程访问MySQL数据库的方法和步骤如下:
首先,需要使用MySQL远程访问命令:mysql-h主机地址-u用户名-p用户密码。
以示例为例:yanggang@host:~$ mysql-h192.168.1.11-uroot-p123456。
若出现错误"ERROR 2003(HY000): Can't connect to MySQL server on'192.168.1.11'(111)",表示无法连接远程的MySQL数据库。
MySQL远程连接数据库有两种方式:mysql.sock和TCP/IP,其中mysql.sock连接速度更快,但仅限于同一台本机。
若遇到上述错误,通常是因为缺少远程访问权限。
解决方法包括:修改目标服务器上的mysql的my.cnf文件以开启远程访问,启动MySQL服务使其生效,对数据库或表赋予访问权限。
具体步骤如下:
1.修改my.cnf文件:sudo vi/etc/mysql/my.cnf,注释掉bind-address,屏蔽其只对本地监听。
2.启动MySQL服务:sudo restart mysql。
3.登录MySQL数据库:mysql-u root-p123456。
4.对数据库top800赋予权限:grant all privileges on top800.* to root@192.168.1.22 identified by'123456';flush privileges;
5.现在可以远程访问服务器上的MySQL。
默认情况下,只能访问information_schema和top800数据库,其中top800是步骤5中赋予权限的数据库。
若需要进一步管理权限,可以使用以下步骤:
1.删除用户对数据库的访问权限:revoke all privileges on top800.* from root@192.168.1.22 identified by'123456'。
2.删除用户root:delete from user where user='yanggang'。
3.修改生效:flush privileges;
4.查询用户:根据需要执行相关查询。
Ubuntu下开启Mysql远程访问的方法
在Ubuntu系统下,MySQL默认设置为仅允许本地访问,即bind-address= 127.0.0.1。为了实现MySQL的远程访问,需要进行以下步骤:
1.首先,在MySQL配置文件中注释掉bind-address的行,原始配置为:
# bind-address= 127.0.0.1
注释掉后应为:
bind-address= 0.0.0.0
2.接着,使用root用户连接MySQL,执行以下命令:
mysql-uroot-ppassword
注意替换password为你的MySQL root密码。
3.授予远程用户访问权限,使用以下命令:
GRANT ALL ON*.* TO'username'@'%' IDENTIFIED BY'password';
将username和password替换为你的用户名和密码。'%'表示允许来自任何IP地址的连接。
4.最后,重启MySQL服务以使更改生效:
/etc/init.d/mysql restart
完成以上步骤后,MySQL将允许远程访问。请确保在实际部署中对数据库连接进行适当的安全配置。
Ubuntu下Java程序如何连接MySQL数据库
linux ubuntu下用C连MySQL接数据mysql数据库的步骤如下:
1.安装mysql-server,在Ubuntu10.04下安装mysql-server-5.1,会自动安装mysql-client_5.1
sudo apt-get install mysql-server-5.1
2.C APIs包含在mysqlclient库文件中与MySQL的源代码一块发行,用于连接到数据库和执行数据库查询,因此需要安装libmysqlclient-dev
sudo apt-get install libmysqlclient-dev
假定已安装成功,相关文件如下:
头文件在/usr/include/mysql目录下;
库文件在/usr/lib/mysql和/usr/lib目录下
3.启动和关闭mysql
启动mysql:sudo start mysql
关闭mysql:sudo stop mysql
使用ps aux|grep mysql查看mysql启动状态
ps命令用于查看当前系统中运行的进程信息,命令格式:ps [选项]
常见参数:
-a显示系统中所有进程,包括其他用户进程
-e显示所有进程信息
-f显示进程的所有信息
-l显示长格式显示进程的信息
-r只显示正在运行的程序
-u以用户的格式显示进程信息
-x显示所有终端上的进程信息
最常用的方法是ps aux,然后再利用一个管道符号导向到grep去查找特定的进程,然后再对特定的进程进行操作。例如前面使用的ps aux|grep mysql
4.链接库时需要库文件,有静态库文件,也有动态库文件,也有名字相同的静态库文件和动态库文件,如何区分:
.o,.a,.so,.lo,.la后缀文件含义
.o:编译的目标文件
.a:静态库,其实就是把若干o文件打了个包
.so:动态链接库(共享库)
.lo:使用libtool编译出的目标文件,其实就是在o文件中添加了一些信息
.la:使用libtool编译出的库文件,其实是个文本文件,记录同名动态库和静态库的相关信息
la只有在用libtool编译应用程序或库时才用,即开发者只指明la文件,至于最终链接a还是so由libtool决定,不使用libtool的小程序用不上la。
5.连接MySql
a、连接到本机上的MYSQL:
首先打开终端窗口,再键入命令mysql-u root-p,回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入
到MYSQL中了,MYSQL的提示符是:mysql>
b.修改密码,格式:mysqladmin-u用户名-p旧密码 password新密码
例1:给root加个密码ab12。首先打开终端窗口,然后键入以下命令:mysqladmin-uroot password ab12.(注:因为开始时root没有密码,所以-p旧密码一项就可以省略了)。
例2:再将root的密码改为djg345。 mysqladmin-uroot-pab12 password djg345(注:u与root可以不用加空格,其它也一样)。
c、退出MYSQL命令: exit
6.增加新用户(注意:和上面不同,下面的因为是MYSQL环境中的命令,所以后面都带一个分号作为命令结束符)
格式:grant select on数据库.* to用户名@登录主机 identified by"密码"
例1、增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。
首先用以root用户连入MYSQL,然后键入以下命令:grant select,insert,update,delete privileges on*.* to"test1"@"%" Identified by"abc" with grant option;但例1增加的用户是十分危险的,
你想如某个人知道test1的密码,那么他就可以在internet上的任何一台电脑上登录你的mysql数据库并对你的数据可以为所欲为了,解决办法见例2。
例2、增加一个用户test2密码为abc,让他只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的操作(localhost指本地主机,即MYSQL数据库所在的那台主机),
这样用户即使用知道test2的密码,他也无法从internet上直接访问数据库,只能通过MYSQL主机上的web页来访问了。
grant select,insert,update,delete on mydb.* to test2@localhost identified by“abc”;如果你不想test2有密码,可再打一个命令将密码消掉。
grant select,insert,update,delete on mydb.* to test2@localhost identified by“”;
例3、远程登录:
a、默认情况下Mysql只允许本地登录,所以需要修改配置文件将地址绑定给注释掉:
vi/etc/mysql/my.cnf
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
#bind-address= 127.0.0.1<---注释掉这一行就可以远程登录了
b、允许远程登录后,还应设置远程登录权限:
mysql>grant all privileges on*.* to"root"@"%" identified by"123456" with grant option;
c、使修改生效:
mysql> flush privileges;
d、在另一台机器上远程登录(mysql所在机器地址:192.168.0.30):
mysql-h192.168.0.30-uroot-p123456
e、如果仍不能登录,就把远程mysql关闭,之后重启
sudo stop mysql
sudo start mysql
7.显示命令:(注:下面来看看MYSQL中有关数据库方面的操作。注意:必须首先登录到MYSQL中,以下操作都是在MYSQL的提示符下进行的,而且每个命令以分号结束)。
a、显示数据库列表:show databases;刚开始时才两个数据库:mysql和test。mysql库很重要它里面有MYSQL的系统信息,我们改密码和新增用户,实际上就是用这个库进行操作。
b、显示库中的数据表:use mysql; show tables;
c、显示数据表的结构:describe表名;
d、建库: create database库名;
e、建表: use库名; create table表名(字段设定列表);
f、删库和删表: drop database库名; drop table表名;
g、将表中记录清空:delete from表名;
h、显示表中的记录:select* from表名;