mysq密码修改 处理中文乱码

来源:互联网 发布:淘宝几十块钱的vr质量 编辑:程序博客网 时间:2024/06/07 06:26

方法一:

(适用于管理员或者有全局权限的用户重设其它用户的密码)
进入命令行模式
mysql -u root mysql 
mysql> UPDATE user SET password=PASSWORD("new password") WHERE user='name';
  mysql> FLUSH PRIVILEGES;
  mysql> QUIT

方法二:
(应用同上,只是方法不同)
 mysql -u root mysql
  mysql> SET PASSWORD FOR name=PASSWORD('new password');
  mysql> QUIT 

(以上两种方法我不常用,如果是管理员,我会用其它如phpmyadmin或者MYSQL-front 等工具来管理用户权限,比较直观又方便)

最后必杀技:

mysqladmin -u root "old password" "new password"

解:以上有name的,请用你的用户名来替代.有new password请输入你想要设置的密码.

 

mysql 数据库导入/导出(总结备忘) 2008-09-11 13:59:35

标签:命令 mysql 数据库
 数据库的基本导入/导出的命令 是 mysqldump source 
在linux下直接用命令行操作就可以 在windows下 一般情况下有两种方法一个也是用命令行 另一个是用phpmyadmin
 
先来说说phpmyadmin 这个工具导出和导入很简单 而且导入时无需建库 直接还原成原来的数据库   用source  也可以还原 但他导入文件时有大小限制不能超过2M
再来说说  mysqldump source  用命令操作很快 但是想把导出的文件再导入时必须先建立一个数据库(这个库可以随便起名) 然后进入数据库后才能导入用phpmyadmin导入mysqldump 导出的文件也得需要这步
 
下面是从前辈那copy来的命令具体使用方法
 
     1.导出整个数据库
  mysqldump -u 用户名 -p 数据库名 > 导出的文件名
  mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql
  2.导出一个表
  mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
  mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql
  3.导出一个数据库结构
  mysqldump -u wcnc -p -d --add-drop-table smgp_apps_wcnc >d:wcnc_db.sql
  -d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table
  
备忘: mysqldump在linux下可直接使用 在windows下有时需要进入mysql/bin中使用 因为有时用的是类似appserv的套装软件 这样的话命令就不能直接使用 因为这些命令没在环境变量的目录里 而且用mysqldump导出的备份 必须先建立数据库才能导入
 
 
      4.导入数据库
  常用source 命令
  进入mysql数据库控制台,
  如mysql -u root -p
  mysql>use 数据库
  然后使用source命令,后面参数为脚本文件(如这里用到的.sql)
  mysql>source d:wcnc_db.sql
 
 
存疑: phpmyadmin导入有大小限制 不知道source导入时有没限制 而且导出时是不可以限制文件大小 并且分数个文件导出

首先在新建数据库时一定要注意生成原数据库相同的编码形式,如果已经生成可以用phpmyadmin等工具再整理一次,防止数据库编码和表的编码不统一造成乱码。

方法一:  通过增加参数 --default-character-set = utf8 解决乱码问题

mysql -u root -p password < path_to_import_file --default-character-set = utf8

方法二: 在命令行导入乱码解决

1. use database_name;

2. set names utf8; (或其他需要的编码)

3. source example.sql  (sql文件存放路径)

方法三: 直接粘贴sql文件里的代码

1. 打开SQLyog客户端软件;

2. 定位到SQL编辑器,然后用记事本打开刚刚导出的SQL文件;

3. 复制文件中所有SQL语句到SQL编辑器当中,执行这些SQL代码;

方法四: 用记事本或其他文本工具改变SQL文件的编码格式(若方法三不行,那就尝试方法四)

1. 用记事本(或UE)打开刚才的导出的SQL文件;

2. 另存此文件——打开另存为对话框,选择对话框中的编码格式为UNICODE编码;

3. 保存文件,然后CTRL+A,全选;

4. 复制里面的SQL语句到SQLyog中的“SQL编码器”当中,再执行一次SQL语句;

5. 执行完成后切记刷新一次,查看中文的数据表,乱码消除,大功告成;

配置字符集:

1、windows下:修改my.ini文件,有两处default-character-set=latin1都改为default-character-set=utf8重启既可。 2、linux下:vi /etc/my.cnf(# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf 既已经把my-medium.cnf拷贝到/etc/下了)在[mysqld]下加入default-character-set = utf8,[client]下加入default-character-set = utf8

 

  1. MySQL> show variables like 'character%';  
  2. +--------------------------+----------------------------------------+  
  3. | Variable_name | Value |  
  4. +--------------------------+----------------------------------------+  
  5. | character_set_client | utf8 |  
  6. | character_set_connection | utf8 |  
  7. | character_set_database | utf8 |  
  8. | character_set_filesystem | binary |  
  9. | character_set_results | utf8 |  
  10. | character_set_server | utf8 |  
  11. | character_set_system | utf8 |  
  12. | character_sets_dir | /usr/local/MySQL/share/MySQL/charsets/ |  
  13. +--------------------------+----------------------------------------+