mysql经常使用命令及问题汇总

一、增长了密码后的登陆格式以下:    mysql -u root -pmysql

二、修改登陆密码
1) mysqladmin -u用户名 -p旧密码 password 新密码     
 例:mysqladmin -u root password 21century   
 注:由于开始时root没有密码,因此-p旧密码一项就能够省略了。
2)直接修改user表的root用户口令:  
 mysql> user mysql;  
 mysql> update user set pasword=password('21century') where user='root';  
 mysql> flush privileges;  
 注:flush privileges的意思是强制刷新内存受权表,不然用的仍是缓冲中的口令。web

三、测试密码是否修改为功  
 1)不用密码登陆  
 [root@test1 local]# mysql  
 ERROR 1045: Access denied for user: 'root@localhost ' (Using password: NO)  
 显示错误,说明密码已经修改。  
2)用修改后的密码登陆  
 [root@test1 local]# mysql -u root -p   
 Enter password: (输入修改后的密码21century)  
 Welcome to the MySQL monitor. Commands end with ; or \g.   
 Your MySQL connection id is 177 to server version: 3.23.48   
 Type 'help;' or '\h' for help. Type '\c' to clear the buffer.  
 mysql>  成功!  
 这是经过mysqladmin命令修改口令,也可经过修改库来更改口令sql

四、启动和中止  
 启动:Mysql从3.23.15版本开始做了改动,默认安装后服务要用mysql用户来启动,不容许root用户启动。        
 若是非要用root用户来启动,必须加上--user=root参数        
 (./safe_mysqld --user=root &)  
 中止:mysqladmin -u root -p shutdown 数据库

五、导出meeting数据库:   
mysqldump -uroot -p21century meeting > db_meeting.sql   导人dbname数据库   
mysqldump -uroot -p21century dbname < xxx.sql     
导入数据库还可用相似于oracle中@my_script.sql的方式一次执行大量sql语句,这在使用mysqldump不起做用时很是有用。  
例:#./mysql -uroot -p < /home/xuys/db_meeting_2003.sql    (注:create database、use databasename、create table和insert into语句均可写在上面的脚步文件中)   安全

六、给表更名    RENAME TABLE ztemp TO ztemp4;服务器

七、修改字段属性    ALTER TABLE bbabase CHANGE news_id id VARCHAR(5) NOT NULL;oracle

八、在表中的content后增长一字段    ALTER TABLE bbabase ADD leave_time DATETIME NOT NULL AFTER content;ide

九、增长用户    GRANT select,update,insert ON 数据库名.* TO 用户名@登陆主机 identified by "密码"          
例:grant select,update,insert,delete on *.* to test@dev identified by "abc";测试

十、只需本机使用Mysql服务,在启动时还能够加上--skip-networking参数使Mysql不监放任何TCP/IP链接
    (./safe_mysqld --skip-networking &),增长安全性。(很是推荐) this

十一、忘记root密码怎么办?   
在启动Mysql服务器时加上参数--skip-grant-tables来跳过受权表的验证    (./safe_mysqld --skip-grant-tables &),这样咱们就能够直接登录Mysql服务器,
    而后再修改root用户的口令,重启Mysql就能够用新口令登录了。

十二、解决mysql不用用户名和密码能够直接登录的问题:
mysql>use mysql;
mysql>delete from user where user='';
mysql>flush privileges; (必须的)


/////////////////////////////

MYSQL1130错误的解决方案

在用远程链接Mysql服务器的数据库,无论怎么弄都是链接不到,错误代码是1130,ERROR 1130: Host 10.0.0.1  is not allowed to connect to this MySQL server 
猜测是没法给远程链接的用户权限问题。

结果这样子操做mysql库,便可解决。

在本机登入mysql后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost”改称'%'。。 
mysql -u root -p 
mysql&gt;use mysql; 
mysql&gt;select 'host' from user where user='root'; 
mysql&gt;update user set host = '%' where user ='root'; 
mysql&gt;flush privileges; 
mysql&gt;select 'host'   from user where user='root';



第一句是以权限用户root登陆 
第二句:选择mysql库 
第三句:查看mysql库中的user表的host值(便可进行链接访问的主机/IP名称) 
第四句:修改host值(以通配符%的内容增长主机/IP地址),固然也能够直接增长IP地址 
第五句:刷新MySQL的系统权限相关表 
第六句:再从新查看user表时,有修改。。 
重起mysql服务便可完成。



mysql 遇到 ERROR 1044 (42000):Access denied for user 的解决方案

2011-05-05 11:51

这个问题主要是由于受权用户自己的权限不足引发的。咱们以root用户为例,须要注意到地方有如下几个方面:

1.MySQL的user表很重要。必须保证root用户在user表里面有两条记录,也就是
root localhost ……..
root 127.0.0.1 …….

2.保证root用户拥有全部权限,也就是user表里面的全部字段里面对应的内容是Y

3.在my.ini后者my.cnf里面有这个配置项的时候
bind-address=localhost
启用这个配置项能够保证安全

4.在服务器上运行MySQL的时候,为了安全起见,尽可能不要给user表里面的host字段赋予%权限.

保证以上几点没有问题的状况下,这个错误基本能够避免

 

另外若是用户不能进入mysql系统,能够用这种方法进入:

若是 MySQL 正在运行,首先中止。启动 MySQL :bin/safe_mysqld --skip-grant-tables & 就能够不须要密码就进入 MySQL 了。而后就是>use mysql>update user set password=password("new_pass") where user="root";>flush privileges;

相关文章
相关标签/搜索