第七章 第五节 MySql配置及相关命令
select Host , User , Password from user; 显示当前用户和密码。update user set password=password('123456') where user='root'; 修改root用户密码
?
??????? 2.另一种修改密码的方法:
??????? shell状态下输入命令:?
????????
usr/bin/mysqladmin -u root password 'new-password'
?
??????? 格式:mysqladmin -u用户名 -p旧密码 password 新密码
?eg:?
??????? 给root加个密码123456。?
??????? 输入以下命令 :
/usr/bin/mysqladmin -u root password '123456'
??????? 注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。
??????? 3.添加mysql用户:
insert into mysql.user(Host,User,Password,ssl_cipher,x509_issuer,x509_subject) values("%","ccs",password("ccs"),'','','');
???????? ‘%’代表任何ip都可以访问,可以根据具体情况设置成指定ip。
??????? 4.授权mysql用户:
grant all privileges on 数据库.表 to db1@ip identified by '密码';flush privileges; 刷新权限表
???????? 数据库:代表授权的数据库,eg:db1
??????? 表:代表授权的表,*代表所有表
??????? db1@ip:代表用户和ip
??????? 密码:输入该用户的密码
??????? all:代表所有操作权限,可以根据情况配置,eg:select,updat,delete,add
?
????????二 设置MySQL字符集
??????? 1.修改mysql字符集:
??????? 进入mysql,运行命令:
show variables like 'char%';SHOW VARIABLES LIKE 'collation_%';[client]default-character-set=utf8 [mysqld]default-character-set=utf8init_connect='SET NAMES utf8' [mysql]default-character-set=utf8
?
??????? 2.重启mysql:
etc/init.d/mysql [start | stop | restart]
?
??????? 3.修改系统字符集:
??????? 修改etc目录下的profile,增加:
export LANG=zh_CN.UTF-8export LC_CTYPE="zh_CN.UTF-8"export LC_NUMERIC="zh_CN.UTF-8"export LC_TIME="zh_CN.UTF-8"export LC_COLLATE="zh_CN.UTF-8"export LC_MONETARY="zh_CN.UTF-8"export LC_MESSAGES="zh_CN.UTF-8"export LC_PAPER="zh_CN.UTF-8"export LC_NAME="zh_CN.UTF-8"export LC_ADDRESS="zh_CN.UTF-8"export LC_TELEPHONE="zh_CN.UTF-8"export LC_MEASUREMENT="zh_CN.UTF-8"export LC_IDENTIFICATION="zh_CN.UTF-8"
?
??????? 三 启动与停止
??????? 1.启动
MySQL安装完成后启动文件mysql在/etc/init.d目录下,在需要启动时运行下面命令:
/etc/init.d/mysql start
?
2.停止MySQL
/usr/bin/mysqladmin -u root -p shutdown
?
3.自动启动
(1)察看mysql是否在自动启动列表中:
/sbin/chkconfig –list
?
(2)把MySQL添加到你系统的启动服务组里面去:
/sbin/chkconfig – add mysql
?
(3)把MySQL从启动服务组里面删除:
?
/sbin/chkconfig – del mysql
?
??????? 四 更改MySQL目录
??????? MySQL默认的数据文件存储目录为/var/lib/mysql。假如要把目录移到/home/data下需要进行下面几步:
??????? 1.home目录下建立data目录
cd /home mkdir data
?
??????? 2.把MySQL服务进程停掉:
mysqladmin -u root -p shutdown
?
??????? 3.把/var/lib/mysql整个目录移到/home/data
mv /var/lib/mysql /home/data/
?
??????????? 这样就把MySQL的数据文件移动到了/home/data/mysql下
??????? 4.找到my.cnf配置文件?
??????? 如果/etc/目录下没有my.cnf配置文件,请到/usr/share/mysql/下找到*.cnf文件,拷贝其中一个到/etc/并改名为my.cnf)中。命令如下:?
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 。如下所示:?
vi my.cnf (用vi工具编辑my.cnf文件,找到下列数据修改之) # The MySQL server [mysqld] port = 3306 #socket = /var/lib/mysql/mysql.sock (原内容,为了更稳妥用“#”注释此行) 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。
vi /etc/rc.d/init.d/mysql #datadir=/var/lib/mysql (注释此行) datadir=/home/data/mysql (加上此行)
?
??????? 7.重新启动MySQL服务
/etc/rc.d/init.d/mysql start
?
??????? 或用reboot命令重启Linux?
??????? 如果工作正常移动就成功了,否则对照前面的7步再检查一下。
?
??????? 五 备份与恢复
??????? 1.备份
??????? 例如:将上例创建的t1库备份到文件back_1中
cd /home/data/mysql (进入到库目录,本例库已由val/lib/mysql转到/home/data/mysql,见上述第四部分内容) mysqldump -u root -p --opt t1 > back_1
?
??????? 2.恢复
mysql -u root -p ccc < back_1
?