`
dawuafang
  • 浏览: 1100177 次
文章分类
社区版块
存档分类
最新评论

MySql配置及相关命令

 
阅读更多

MySQL安装完毕后我们需要对它进行一些设置及性能优化,主要包括字符集设置,启动设置,连接优化,表优化,分区优化等等。


转自http://286.iteye.com/blog/1901174

一 修改MySQL密码及用户

1.修改mysql用户密码:
默认安装的mysql初始root用户没有密码,需要运行mysql,进入mysql命令状态,运行命令:

Sql代码收藏代码
  1. selectHost,User,Passwordfromuser;显示当前用户和密码。
  2. updateusersetpassword=password('123456')whereuser='root';修改root用户密码

2.另一种修改密码的方法:

shell状态下输入命令:

Shell代码收藏代码
  1. usr/bin/mysqladmin-urootpassword'new-password'


格式:mysqladmin -u用户名 -p旧密码 password 新密码
  eg:
给root加个密码123456。
输入以下命令 :

Shell代码收藏代码
  1. /usr/bin/mysqladmin-urootpassword'123456'

注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。


3.添加mysql用户:

Sql代码收藏代码
  1. insertintomysql.user(Host,User,Password,ssl_cipher,x509_issuer,x509_subject)values("%","ccs",password("ccs"),'','','');

‘%’代表任何ip都可以访问,可以根据具体情况设置成指定ip。


4.授权mysql用户:

Sql代码收藏代码
  1. grantallprivilegeson数据库.表to<ahref="mailto:db1@ip">db1@ip</a>identifiedby'密码';
  2. flushprivileges;刷新权限表

数据库:代表授权的数据库,eg:db1
表:代表授权的表,*代表所有表
db1@ip:代表用户和ip
密码:输入该用户的密码
all:代表所有操作权限,可以根据情况配置,eg:select,updat,delete,add

二 设置MySQL字符集

1.修改mysql字符集:
进入mysql,运行命令:

Sql代码收藏代码
  1. showvariableslike'char%';
结果:
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary|
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir| /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)

再输入以下命令:

Sql代码收藏代码
  1. SHOWVARIABLESLIKE'collation_%';
结果:
+----------------------+-----------------+
| Variable_name | Value |
+----------------------+-----------------+
| collation_connection | utf8_general_ci |
| collation_database | utf8_general_ci |
| collation_server | utf8_general_ci |
+----------------------+-----------------+
3 rows in set (0.00 sec)


如果显示结果不是如上所示则:
修改etc目录下的my.cnf,增加:

配置代码收藏代码
  1. [client]
  2. default-character-set=utf8
  3. [mysqld]
  4. default-character-set=utf8
  5. init_connect='SETNAMESutf8'
  6. [mysql]
  7. default-character-set=utf8


2.重启mysql:

Shell代码收藏代码
  1. etc/init.d/mysql[start|stop|restart]


3.修改系统字符集:
修改etc目录下的profile,增加:

Shell代码收藏代码
  1. exportLANG=zh_CN.UTF-8
  2. exportLC_CTYPE="zh_CN.UTF-8"
  3. exportLC_NUMERIC="zh_CN.UTF-8"
  4. exportLC_TIME="zh_CN.UTF-8"
  5. exportLC_COLLATE="zh_CN.UTF-8"
  6. exportLC_MONETARY="zh_CN.UTF-8"
  7. exportLC_MESSAGES="zh_CN.UTF-8"
  8. exportLC_PAPER="zh_CN.UTF-8"
  9. exportLC_NAME="zh_CN.UTF-8"
  10. exportLC_ADDRESS="zh_CN.UTF-8"
  11. exportLC_TELEPHONE="zh_CN.UTF-8"
  12. exportLC_MEASUREMENT="zh_CN.UTF-8"
  13. exportLC_IDENTIFICATION="zh_CN.UTF-8"

三 启动与停止
1.启动
   MySQL安装完成后启动文件mysql在/etc/init.d目录下,在需要启动时运行下面命令:

Shell代码收藏代码
  1. /etc/init.d/mysqlstart


   2.停止MySQL

Shell代码收藏代码
  1. /usr/bin/mysqladmin-uroot-pshutdown


   3.自动启动
   (1)察看mysql是否在自动启动列表中:

Shell代码收藏代码
  1. /sbin/chkconfig–list

   (2)把MySQL添加到你系统的启动服务组里面去:

Shell代码收藏代码
  1. /sbin/chkconfig –add mysql

   (3)把MySQL从启动服务组里面删除:

Shell代码收藏代码
  1. /sbin/chkconfig –del mysql

四 更改MySQL目录
MySQL默认的数据文件存储目录为/var/lib/mysql。假如要把目录移到/home/data下需要进行下面几步:
1.home目录下建立data目录

Shell代码收藏代码
  1. cd/home
  2. mkdirdata


2.把MySQL服务进程停掉:

Shell代码收藏代码
  1. mysqladmin-uroot-pshutdown

3.把/var/lib/mysql整个目录移到/home/data

Shell代码收藏代码
  1. mv/var/lib/mysql /home/data/

这样就把MySQL的数据文件移动到了/home/data/mysql下


4.找到my.cnf配置文件
如果/etc/目录下没有my.cnf配置文件,请到/usr/share/mysql/下找到*.cnf文件,拷贝其中一个到/etc/并改名为my.cnf)中。命令如下:

Shell代码收藏代码
  1. cp/usr/share/mysql/my-medium.cnf /etc/my.cnf

5.编辑MySQL的配置文件/etc/my.cnf
为保证MySQL能够正常工作,需要指明mysql.sock文件的产生位置。

修改"socket=/var/lib/mysql/mysql.sock"一行中等号右边的值为:/home/mysql/mysql.sock 。如下所示:

Shell代码收藏代码
  1. vimy.cnf   (用vi工具编辑my.cnf文件,找到下列数据修改之)
  2. #TheMySQLserver
  3. [mysqld]
  4. port=3306
  5. #socket=/var/lib/mysql/mysql.sock(原内容,为了更稳妥用“#”注释此行)
  6. socket=/home/data/mysql/mysql.sock(加上此行)


6.修改MySQL启动脚本/etc/rc.d/init.d/mysql
最后,需要修改MySQL启动脚本/etc/rc.d/init.d/mysql,把其中datadir=/var/lib/mysql一行中,等号右边的路径改成你现在的实际存放路径:home/data/mysql。

Shell代码收藏代码
  1. vi/etc/rc.d/init.d/mysql
  2. #datadir=/var/lib/mysql    (注释此行)
  3. datadir=/home/data/mysql  (加上此行)

7.重新启动MySQL服务

Shell代码收藏代码
  1. /etc/rc.d/init.d/mysql start


或用reboot命令重启Linux
如果工作正常移动就成功了,否则对照前面的7步再检查一下。

五 备份与恢复
1.备份
例如:将上例创建的t1库备份到文件back_1中

Shell代码收藏代码
  1. cd /home/data/mysql (进入到库目录,本例库已由val/lib/mysql转到/home/data/mysql,见上述第四部分内容)
  2. mysqldump-uroot-p--optt1>back_1


2.恢复

Shell代码收藏代码
  1. mysql-uroot-pccc<back_1
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics