本文目录一览:
- [如何用命令行重置mysql密码,忘记mysql数据库密码怎么办 三六零问答](#如何用命令行重置mysql密码,忘记mysql数据库密码怎么办 三六零问答)
- [怎么连接其他server mysql数据库](#怎么连接其他server mysql数据库)
- [怎么UPDATE 整个数据库 mysql的](#怎么UPDATE 整个数据库 mysql的)
- 在mysql中使用命令行更新数据
- MySQL更新2个表里面数据的命令(向大神们请教)
- mysql数据库中最常用的几个命令
如何用命令行重置mysql密码,忘记mysql数据库密码怎么办 三六零问答
很多人在想用数据库可视化界面管理多方便或者是那个什么集成套件或者是phpadmin那个网页,告诉你一旦数据库密码不记得了这些都进不去所以根本没法操作,废话不多说了,我的数据库用户名是root这里主要说如果重置密码。
- 停掉mysql所有服务或者打开任务管理器关掉所有mysql进程,停止mysql服务的语句,首先进入mysql安装目录
的bin目录我这里是
F:\smarty\MySQL\bin
- 执行
停掉服务。net stop mysql
- 进入cmd打开一个新的命令行窗口,并进入到mysql安装目录的bin目录
- 跳过权限检查启动MySQL,执行
这条语句操作此步骤 这步执行之后你会发现你的这个窗口里面不能输入了。好了准备执行下一步。mysqld-nt --skip-grant-tables
- 重新打开一个cmd命令行窗口,命令行转到
F:\smarty\MySQL\bin
目录下直接用mysql命令进入数据库 这样已经进入数据库了,接下来就是切换至mysql数据库改变root用户的密码 - 切换到mysql数据库并更改密码,这里当然就不需要旧密码了否则就没有任何意义了。 我这里当然以前的密码不是root所以这里改成了root.
- 刷新权限:
flush privileges;
- 现在就可以重启mysql,如果重启不了可以到任务管理器里面关掉mysql进程然后
启动服务,再输入命令net start mysql
就可以了mysql -uroot -p你的新密码
怎么连接其他server mysql数据库
首先我们在linux系统上安装mysql,本文默认linux系统可以联网或者已经挂载光盘iso了,我们使用命令 apt-get install mysql-server
命令进行安装,安装完成后,查看mysql是否启动,执行命令 ps -e |grep mysql
。
验证初始是否允许远程连接,由于本次虚拟机IP为192.168.2.120,因此我们执行命令:
mysql -h 192.168.20.120 -P 3306 -u root -proot
(备注:-proot
,root指root账号的密码),可以得到结果连接不上。
假如我们不采用远程连接,可以连接上,命令为:
mysql -u root -proot
接下来,我们连接上数据库,执行命令:
use mysql;
使用mysql数据库。 并查看用户表信息,执行命令为:
select Host,User from user;
通过上面步骤可以得到数据表 user内的值,下面我们对表进行更新记录允许远程访问, 执行命令为:
update user set Host='%' where User='root' limit 1;
(该条命令意思为更新user表内User值为root的第一条记录的Host值设置为%)更新完成后,执行上一步查询命令进行验证 执行强制刷新命令:
flush privileges;
执行完毕后,关闭数据库连接。
更改mysql安装目录下的my.cnf
文件。
一般默认路径在/etc/mysql/
下,找到bind-address = 127.0.0.1
这一行,可以对其进行删除,注释或者将127.0.0.1
更改为0.0.0.0
,修改完毕后保存。
重启mysql,命令为:
service mysql restart
进行远程登陆测试,可以看到已经允许远程连接了。 mysql数据库允许远程连接
怎么UPDATE 整个数据库 mysql的
第一种,很简单,适用于任何存储引擎。
- 下载并安装好新版本的MySQL数据库,并将其端口改为3307(避免和旧版本的3306冲突),启动服务。
- 在新版本下创建同名数据库。
# mysqldump -p3307 -uroot create mysqlsystems_com
- 在旧版本下备份该数据库。
# mysqldump -p3306 -uroot mysqlsystems_com mysqlsystems_com.bk
Note: 你也可以加上
--opt
选项,这样可以使用优化方式将你的数据库导出,减少未知的问题。 - 将导出的数据库备份导入到新版本的MySQL数据库中。
# mysql -p3307 -uroot mysqlsystems_com mysqlsystems_com.bk
- 再将旧版本数据库中的data目录下的mysql数据库全部覆盖到新版本中。
# cp -R /opt/mysql-5.1/data/mysql /opt/mysql-5.4/data
Note: 大家也都知道这个默认数据库的重要性。
- 在新版下执行
mysql_upgrade
命令,其实这个命令包含一下三个命令:# mysqlcheck –check-upgrade –all-databases –auto-repair # mysql_fix_privilege_tables # mysqlcheck –all-databases –check-upgrade –fix-db-names –fix-table-names
Note: 在每一次的升级过程中,
mysql_upgrade
这个命令我们都应该去执行,它通过mysqlcheck
命令帮我们去检查表是否兼容新版本的数据库同时作出修复,还有个很重要的作用就是使用mysql_fix_privilege_tables
命令去升级权限表。 - 关闭旧版本,将新版的数据库的使用端口改为3306,重新启动新版本MySQL数据库。到此,一个简单环境下的数据库升级就结束了。 第二种,同样适用任何存储引擎。
- 同样先安装好新版本的MySQL。
- 在旧版本中,备份数据库。
# mkdir /opt/mysqlsystems_bk ; mysqldump -p3306 -uroot –tab=/opt/mysqlsystems_bk mysqlsystems_com
Note:
--tab
选项可以在备份目录mysqlsystems_bk
下生成后缀为*.sql
和*.txt
的两类文件;其中,.sql
保存了创建表的SQL语句而.txt
保存着原始数据。 - 接下来在新版本的数据库下更新数据。
# mysqladmin -p3307 -uroot create mysqlsystems_com # cat /opt/mysqlsystems_bk/*.sql | mysql -p3307 -uroot mysqlsystems_com ( Create Tables ) # mysqlimport mysqlsystems_com /opt/mysqlsystems_bk/*.txt ( Load Data )
- 之后的所有步骤与第一种方法的后三步5、6、7相同。 第三种,适用于MyISAM存储引擎,全部是文件间的拷贝。
- 安装。
- 从旧版本mysqlsystems_com数据库下将所有
.frm
、.MYD
和.MYI
文件拷贝到新版本的相同目录下。 - 之后的步骤依然同于第一种的后三步。
在mysql中使用命令行更新数据
update 表名 set title="XXX:开始测试" where title="开始测试" 注意引号别用中文的
MySQL更新2个表里面数据的命令(向大神们请教)
假设你要更新 ID =1,如果用MYSQL是可以实现的(目前只有MYSQL支持这样的语法)。参考下面的语法。
UPDATE employee t1,info t2
SET t1.name='abc', t1.password='123', t2.tell='123456', t2.address='zxy'
WHERE t1.ID=t2.ID and t1.ID = 1;
但是按照SQL标准,在其它数据库里SQL 语句不支持 用UPDATE来同时更新两张表。你这么做可移植性不好。而且和拆成两条来比较也没优势的地方。 用其它数据库你必须拆成两条UPDATE,假设你要更新 ID =1的 一个人的两部分信息那么可以参考下面的方法。
UPDATE employee SET name='abc', password='123' WHERE ID = 1
UPDATE info SET tell='123456', address='zxy' WHERE ID = (select ID from employee where ID=1);
mysql数据库中最常用的几个命令
Mysql常用命令行大全: 第一招、mysql服务的启动和停止
net stop mysql
net start mysql
第二招、登陆mysql 语法如下:
mysql -u用户名 -p用户密码
键入命令:
mysql -uroot -p
回车后提示你输入密码,输入12345,然后回车即可进入到mysql中了,mysql的提示符是:
mysql>
注意,如果是连接到另外的机器上,则需要加入一个参数 -h机器IP
第三招、增加新用户
格式:
grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码"
如,增加一个用户user1密码为password1,让其可以在本机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入mysql,然后键入以下命令:
grant select,insert,update,delete on *.* to user1@localhost Identified by "password1";
如果希望该用户能够在任何机器上登陆mysql,则将localhost改为"%"。 如果你不想user1有密码,可以再打一个命令将密码去掉。
grant select,insert,update,delete on mydb.* to user1@localhost identified by "";
第四招:操作数据库 登录到mysql中,然后在mysql的提示符下运行下列命令,每个命令以分号结束。
- 显示数据库列表:
缺省有两个数据库:mysql和test。mysql库存放着mysql的系统和用户权限信息,我们改密码和新增用户,实际上就是对这个库进行操作。show databases;
- 显示库中的数据表:
use mysql; show tables;
- 显示数据表的结构:
describe 表名;
- 建库与删库:
create database 库名; drop database 库名;
- 建表:
use 库名; create table 表名(字段列表); drop table 表名;
- 清空表中记录:
delete from 表名;
- 显示表中的记录:
select * from 表名;
第五招、导出和导入数据
- 导出数据:
即将数据库test数据库导出到mysql.test文件,后者是一个文本文件。 如:mysqldump --opt test mysql.test
就是把数据库dbname导出到文件mysql.dbname中。mysqldump -u root -p123456 --databases dbname mysql.dbname
- 导入数据:
不用解释了吧。mysqlimport -u root -p123456 mysql.dbname
- 将文本数据导入数据库:
文本数据的字段数据之间用tab键隔开。
use test; load data local infile "文件名" into table 表名;
常用命令列表:
- 使用SHOW语句找出在服务器上当前存在什么数据库:
SHOW DATABASES;
- 创建一个数据库MYSQLDATA:
CREATE DATABASE MYSQLDATA;
- 选择你所创建的数据库:
(按回车键出现Database changed 时说明操作成功!)USE MYSQLDATA;
- 查看现在的数据库中存在什么表:
SHOW TABLES;
- 创建一个数据库表:
CREATE TABLE MYTABLE (name VARCHAR(20), sex CHAR(1));
- 显示表的结构:
DESCRIBE MYTABLE;
- 往表中加入记录:
insert into MYTABLE values ("hyq","M");
- 用文本方式将数据装入数据库表中(例如D:/mysql.txt):
LOAD DATA LOCAL INFILE "D:/mysql.txt" INTO TABLE MYTABLE;
- 导入.sql文件命令(例如D:/mysql.sql):
use database; source d:/mysql.sql;
- 删除表:
drop TABLE MYTABLE;
- 清空表:
delete from MYTABLE;
- 更新表中数据:
update MYTABLE set sex="f" where name='hyq';
- 备份数据库:
mysqldump -u root 库名 > xxx.data
- 例2:连接到远程主机上的MYSQL
假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123。则键入以下命令:
(注:u与root可以不用加空格,其它也一样) 退出MYSQL命令:mysql -h110.110.110.110 -uroot -pabcd123
exit