阅读更多
1 编译安装
前置依赖:
编译:
1 2 3 4 5 6 7 8 9 10 11 12 13
| git clone https://github.com/mysql/mysql-server.git --depth 1 cd mysql-server
mkdir build cd build
cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ -DCMAKE_C_COMPILER=/usr/local/bin/gcc \ -DCMAKE_CXX_COMPILER=/usr/local/bin/g++ \ -DWITH_BOOST=/usr/local/boost \ ..
make
|
编译之后,mysql-server/build/runtime_output_directory
目录下会生成二进制mysqld
启动:
1 2 3 4 5 6 7
| cd mysql-server/build/runtime_output_directory
./mysqld --initialize-insecure
./mysqld
|
测试:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| CREATE DATABASE IF NOT EXISTS test; CREATE TABLE test.user ( id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(50) NOT NULL, password VARCHAR(255) NOT NULL, email VARCHAR(100), created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP );
INSERT INTO test.user (username, password, email) VALUES ('alice', 'password123', 'alice@example.com'), ('bob', 'securepass456', 'bob@example.com'), ('charlie', 'mypassword789', 'charlie@example.com');
SELECT * FROM test.user;
|
2 Tips
truncate
函数:sql/my_decimal.h
中的my_decimal_round
函数
- 如何用docker运行:
sudo docker run -dit -p 3306:3306 -e MYSQL_ROOT_PASSWORD='Abcd1234' -v <local_path>:/var/lib/mysql mysql:5.7.37 mysqld --lower_case_table_names=1