1.1 MySQL 数据库
n MySQL Performance Blog(www.mysqlperformanceblog.com) n MySQL PUB (www.mysqlpub.com) |
1. MySql 安装
1、解压 tar -xvfz mysql-5.0.21.tar.gz 2、环境配置及安装 cd mysql-5.0.21 ./configure --prefix=/usr/local/mysql --sysconfdir=/etc \ --localstatedir=/mnt/ext/mysql/ \ --enable-assembler --with-charset=utf8 \ --with-extra-charsets=all --with-berkeley-db --with-innodb \ --without-readline --enable-assembler --with-pthread \ --enable-largefile --with-big-tables --enable-thread-safe-client \ --with-client-ldflags=-all-static \ --with-max-indexes=64 --with-mysqld-ldflags=-all-static --without-ndbcluster --without-debug \ --with-unix-socket-path=/tmp/mysql.sock
/*说明: #prefix=/usr/local/mysql mysql安装的目标目录 #sysconfdir=/etc my.ini配置文件的路径 #localstatedir=/var/lib/mysql 数据库存放的路径*/ make make install 3、mysql用户权限配置 添加mysql用户及用户组 # groupadd mysql # useradd -g mysql mysql 修改mysql目录权限 # chown -R root /usr/local/mysql # chgrp -R mysql /usr/local/mysql # chown -R mysql /mnt/ext/mysql # cp support-files/my-medium.cnf /etc/my.cnf # cp support-files/mysql.server /etc/init.d/mysql 4、环境变量设置 vi /etc/profile 及 vi /root/.bash_profile #--basedir是设置mysql所在的目录,--datadir是设置data所在目录 export PATH=/usr/local/MySQL/bin:$PATH PATH=/usr/local/MySQL/libexec:$PATH --其它可选 basedir="/usr/local" bindir="/usr/local/bin" mysqld="/usr/local/libexec/mysqld" pkgdatadir="/usr/local/share/mysql" /*说明:其中/usr/local/mydql/bin是MySQL主要的可执行程序的目录, 而libexec是放MySQL的后台主程序MySQLd的 (2).bashrc的配置:*/ 5、加载MySql --#初始化数据库,如果是升级的话就不做此步 scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql \ --datadir=/mnt/ext/mysql /usr/local/mysql/bin/mysqld_safe --user=mysql & /*说明:如果启动不了的话那就是权限的问题, 修改/var/lib/mysql的权限 chown -R mysql:mysql /var/lib/mysql 或者可以用root启动mysql:/usr/local/mysql/bin/mysqld_safe --user=root & 如果再不能启动,那就是my.cnf配置的问题 */ 6、MySql开启 修改执行权限:chmod 775 /etc/init.d/mysql --查看mysql状态:/etc/rc.d/init.d/mysql status 启动:/etc/rc.d/init.d/mysql start 或 service mysql start 开机自动启动MYSQL服务器:chkconfig mysql on # /sbin/chkconfig --del mysql # /sbin/chkconfig --add mysql 或 vi /etc/rc.d/rc.local 中加入:/usr/local/mysql/support-files/mysql.server start 重设秘密:/usr/local/bin/mysqladmin -u root password '修改的秘密' 7、备份数据库 --mysqldump这个命令用于备份mysql:mysqldump -uroot -p 数据库名 > 备份路径 如:/usr/local/bin/mysqldump –u root -p mysql > /root/mysql.sql 8、导入数据库 mysql -u root -p 数据库名 < 数据库文件 --远程主机连接,ip:xx.xx.xx.xx:YYYY,导出数据 mysqldump -uUser -pPwd -h xx.xx.xx.xx -PYYYY Pwd > test.dump 修复、检查和优化.ism后缀的数据库文件:isamchk 用来修复.myi后缀的数据库文件: /usr/local/bin/myisamchk /var/lib/mysql/mysql/*.MYI --检查msyql数据库中所有的.MYI文件 9、数据修复参考 如果有问题用-r参数来修复 /usr/local/bin/myisamchk -r /var/lib/mysql/mysql/*.MYI 显示用户选择的数据库和表:mysqlshow /usr/local/bin/mysqlshow -u root -p 数据库名 10、mysql常用命令 shell>show variable; #查看参数配置命令 shell>show status; #查看状态 shell>show processlist; #查看进程 shell>show databases; #查看有哪些数据库 shell>use database_name; #指定数据库 shell>show tables; #查看数据库中有哪些表 shell>desc table_name #查看表结构 shell>show create table table_name \G; #查看表的详细创建信息 Shell>show triggers \G shell>create database [if not exists] database_name; #创建数据库 shell>drop database [if exists] database_name; #删除数据库 how procedure status; //存储过程 show function status; //函数 查看存储过程或函数的创建代码 show create procedure proc_name; show create function func_name; 查看视图 SELECT * from information_schema.VIEWS //视图 SELECT * from information_schema.TABLES //表 shell> mysql --help;#查看帮助 11、其它操作 mysql> update user set password=PASSWORD("123456") where User='root'; #--更新密码 mysql>flush privileges; #--重新刷新权限 如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码 GRANT ALL PRIVILEGES ON *.* TO 'hostname'@'ip' IDENTIFIED BY 'psswd' WITH GRANT OPTION; GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON mysql.* TO '*'@'*' IDENTIFIED BY 'passwd'; |