1 mysql实战二进制安装
数据库和web分离,web服务器上如何安装mysql?
通过mysql的包,调用Php的函数,make install后即可。
useradd mysql -s /sbin/nologin –M
tar xf mysql-5.5.32-linux2.6-x86_64.tar.gz
mv mysql-5.5.32-linux2.6-x86_64/ /application/mysql-5.5.32/
ln -s /application/ mysql-5.5 /application/mysql
mkdir /application/mysql/data
chown -R mysql.mysql /application/mysql/data/
chmod -R 1777 /tmp/ 调整/tmp权限,否则初始化会错误
[[email protected] mysql]# ./mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data/ --user=mysql
初始化数据库
when specifying MySQL privileges !
Installing MySQL system tables...
OK
Filling help tables...
OK 出现两个OK 代表成功
[[email protected] mysql]# cp support-files/my-small.cnf /etc/my.cnf
cp: overwrite `/etc/my.cnf‘? y
更改/etc/init.d/mysqld 文件
46 basedir=/application/mysql
47 datadir=/application/mysql/data
echo "export PATH=/application/mysql/bin:$PATH" >>/etc/profile
source /etc/profile
Data 里面的库
performance_schema mysql 自己的维护的库
mysql 用户权限等库
二进制安装,默认为/usr/local 路径,要更改配置文件里的路径。
出现的问题解决:
[[email protected] scripts]# ./mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data/ --user=mysql
FATAL ERROR: Could not find my_print_defaults
The following directories were searched:
/application/mysql//bin
/application/mysql//extra
If you compiled from source, you need to run ‘make install‘ to
copy the software into the correct location ready for operation.
If you are using a binary release, you must either be at the top
level of the extracted archive, or pass the --basedir option
pointing to that location.
[[email protected] scripts]# ./mysql_install_db --basedir=/application/mysql-5.5.32/ --datadir=/application/mysql-5.5.32/data/ --user=mysql
安装路径不正确!!!!
mysql报错解决
[[email protected] mysql]# /etc/init.d/mysqld start
Starting MySQL... ERROR! The server quit without updating PID file (/var/lib/mysql/hexudong.oldboy.pid).
[[email protected] mysql]# killall mysqld
多killall 几次即可。
问题一:(李新宇)
[[email protected] mysql]# /etc/init.d/mysqld start
Starting MySQL... ERROR! The server quit without updating PID file (/var/lib/mysql/c66-kslx.pid).
问题原因:权限问题,没有授权MySQL管理数据库文件
解决方法:
chown -R mysql.mysql /application/mysql/
问题二:(肖海波)
ERROR: 1 Can‘t create/write to file ‘/tmp/#sql_6a81_0.MYI‘ (Errcode: 13)
问题原因:权限问题
解决方法:chmod -R 1777 /tmp
问题三:mysql包传送有问题
解决方法:rz 不要打勾。ASCII
问题四:(卢世祺)
[[email protected] application]# mysql
ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: NO)
问题原因:初始化问题
解决方法:删除data目录重建,重新初始化
问题五:(断翅)
ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/tmp/mysql.sock‘ (2)
问题原因:服务没启动
mysql 多实例:
mkdir /data/{3306,3307}/data -p
把data 文件,放到跟下解压。
/application/mysql/scripts/mysql_install_db --basedir=/application/mysql --datadir=/data/3306/data/ --user=mysql
初始化第一个实例
./mysql_install_db --basedir=/application/mysql/ --datadir=/data/3307/data/ --user=mysql
初始化第二个实例
授予执行权限
[[email protected] scripts]# find /data -type f -name mysql | xargs ls
/data/3306/mysql /data/3307/mysql
[[email protected] scripts]# find /data -type f -name mysql | xargs chmod +x
授予myssql权限
chown mysql.mysql -R /data
关闭数据库:
/mysqladmin -u ${mysql_user} -p${mysql_pwd} -S /data/${port}/mysql.sock shutdown
启动数据库:
mysql -uroot -p3306 -S /data/3306/mysql.sock